feat(design): titles in click surfaces stay selectable (E28 S3e4b)
A button whose text is a title or a name is now `selectable` (FocusSafeButton, under Pressable and Button): Chrome selects inside a button once it is user-select: text (measured), and the click that ends a selection, or a press dragged past the slop, opens nothing. 23 surfaces carry it (cards, rows, people, channels, playlists, users, views, messages, log lines, description links); the Plex caption div gets the same guard. A contract test pins every plain Pressable with its reason, so a new one has to choose.
This commit is contained in:
@@ -80,6 +80,7 @@ export function renderDescription(
|
||||
const sameVideo = yt.id === opts.currentId;
|
||||
out.push(
|
||||
<Pressable
|
||||
selectable
|
||||
key={key++}
|
||||
onClick={() =>
|
||||
sameVideo ? opts.onSeek(yt.start ?? 0) : opts.onLoadVideo(yt.id, yt.start)
|
||||
@@ -135,6 +136,7 @@ export function renderDescription(
|
||||
const ts = m[3]!;
|
||||
out.push(
|
||||
<Pressable
|
||||
selectable
|
||||
key={key++}
|
||||
onClick={() => opts.onSeek(tsToSeconds(ts))}
|
||||
className="text-accent hover:underline"
|
||||
|
||||
Reference in New Issue
Block a user