fix(cmux-next): quiet composer box, pill hover, no click flash

Merged
TE
18d ago
+178-81

Summary

The cmux NEXT composer box answered the pointer while its chips did not. On the New Tab page the whole box lifted its fill under the pointer, and the model, reasoning and access pills showed no hover at all: their resting-fill rule in styles.css came after the hover rule with the same specificity, and the composer bar's hover rule set the background to transparent. A click then flashed a brighter 22% press tone and drew a 1px ring that faded back while the menu opened.

Now the box looks the same at rest, under the pointer and with the keyboard, like the Claude desktop and ChatGPT composers. Each pill steps to --acpmux-pill-hover under the pointer, and holds that same step, with no ring, while pressed and while its menu is open. Keyboard focus on a pill still draws its ring.

Testing

  • test/composer-quiet-chips.test.ts (new, Chromium and WebKit): the New Tab box's fill is unchanged under the pointer; on the New Tab page and in a new chat's composer bar, each pill steps on hover, and pressed equals open with no box-shadow. It is committed before the fix. Red on the base and green with the fix, from a headless WebKit probe on the same gallery stages: hover read rgba(255,255,255,0.06) (the resting fill) before and 0.11 after; per frame, a click went 0.06 โ†’ 0.22 + ring โ†’ 0.06 + ring before and held 0.11, no ring, after.
  • Updated test/new-tab-omnibar-pointer.test.ts (box hover lift is gone) and the pill-rail case in test/composer-chip-press.test.ts (open pill has no edge ring).
  • The browser suites were not run locally: cosmic-gray's load average was ~300, so Vite warm-up timed out. CI's browser lane runs them.
  • bunx tsc --noEmit, vp fmt --check and vp lint are clean for the changed files.

Changelog

Changed: The composer box no longer highlights on hover; the model and reasoning chips get a subtle hover and no longer flash when clicked

Proof

Headless WebKit on the gallery stage agent-pane.new-tab / reasoning-chip, dark, 2x.

box hover

chip hover

chip open

๐Ÿค– Generated with Claude Code