fix(client): keep the ring on the triggers and off the menu rows

The two split the other way around: the composer's triggers keep the focus
ring their design gives them (a 2px `--dsw-alias-border-l3` ring), while a
walked menu row shows the hover fill alone, without the browser's default
outline doubling it.
This commit is contained in:
liukx0205 committed 2026-09-15 13:55:50 +08:00
1 parent 449a4610d7
commit 4fc515cb68
3 files changed
+6 -10

No files matched your search

@@ -34,10 +34,7 @@
}
.trigger:focus-visible {
/* The same fill a hovered trigger gets: the trigger is one of the row-like
controls of the composer, and the ring its neighbours never drew read as a
different kind of state. */
background: var(--dsw-alias-interactive-bg-hover);
box-shadow: 0 0 0 2px var(--dsw-alias-border-l3);
}
.trigger:disabled {
@@ -23,10 +23,7 @@
}
.trigger:focus-visible {
/* The same fill a hovered trigger gets: the trigger is one of the row-like
controls of the composer, and the ring its neighbours never drew read as a
different kind of state. */
background: var(--dsw-alias-interactive-bg-hover);
box-shadow: 0 0 0 2px var(--dsw-alias-border-l3);
}
.trigger:disabled {
@@ -117,10 +117,11 @@
}
/* Arrow navigation moves real focus, so the row the keyboard is on carries the
same fill the pointer gets on top of the browser's own focus ring, which the
app's other controls keep too. */
same fill the pointer gets: the fill is the row's focus indication, and the
browser's default ring would double it. */
.item:focus-visible:not(:disabled) {
background: var(--dsw-alias-interactive-bg-hover);
outline: none;
}
.denseList .item {
@@ -217,6 +218,7 @@
.danger:focus-visible:not(:disabled) {
background: var(--dsw-alias-interactive-bg-hover-danger);
outline: none;
}
/* Heading row: non-interactive small grey text, padding aligned with items. */