Repository navigation
cmux NEXT composer: the quiet row's hover pill is the native selection pill's size (8 px, not 4) - #24138
Conversation
…n pill's size Leo (2026-10-22): "the highlight pill is too small". Under the composer box the mode, model and effort chips padded their hover/open/press pill 4 px from the text, a sliver hugging the label. The row's --acpmux-row-inset is now 8 px, the inset of an NSMenu row's highlight and of Codex's and ChatGPT's mode chip. The row's padding and the context ring's margins are counted from that inset, so the text and the ring keep their places; only the pill grows. test/composer-foot-pill-inset.test.ts pins the inset and the compensations; composer-row-rhythm.test.ts now measures 8 px from each foot chip's pill edge to its text in Chromium (red on base: 4.0 px). Leo-ask: ask-608336bd91 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Gallery before/after for
States
Pick other states with a red: cmux-next checks (god files, concurrency, crash safety, l10n); NEW: Tour of |
|
Owned by glass-regressions on cosmic-gray · session |
|
Found 13 test failures on Blacksmith runners: Failures
...and 3 more test failures. View all on Blacksmith: run 39728758842, run 39728758893
|
|
Bead |
…dLast) vp check failed on the PR: composer-row-rhythm.test.ts was not formatted, and composer-foot-pill-inset.test.ts called Array.prototype.findLast, which the webviews tsconfig lib does not declare (TS2550). The last declared inset is now read by index after a filter; the assertion is unchanged. Leo-ask: ask-608336bd91 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e with the wider pill Review (Codex xhigh) found the 8 px inset moved labels when the quiet row's right side holds more than the model: chips touch (no gap), so each neighbour's extra 4 px a side pushed the chips before it. With the model, Plan and a harness's Options chip, the model's label moved 16 px and Plan's 8 px; with the model and Options, the model's moved 8 px. Each right-side chip after the first now starts calc(8px - 2 * inset) early, tucking its leading pill padding under the one before it, so neighbouring labels stay 8 px apart as on base (the effort chip keeps its 1 px more). Measured in Chromium against base, LTR and RTL, for model+ring, model+Plan+Options+ring, model+effort+ring and mode-first orders: every label and the ring move 0.00 px; every pill starts 8 px before its text. The later chip takes the pointer over the shared 8 px. test/composer-foot-pill-inset.test.ts pins the neighbour rule (red at e4fdde1). Leo-ask: ask-608336bd91 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Review (Codex xhigh via acpmux, correctness first): SHIP at 28ef87f BLOCKING: none NON-BLOCKING:
CHECKED:
|
|
Shipped in:
|
|
Shipped in:
|
- ComposerBox.tsx: base #24367 gave the box a Codex look (useQuietRow, the ring before the model in the box's row, a bottom slot); this branch removes Codex's bolt (FastToggle) from the box. Kept base's quietRow gating (useRowFit(bar, quietRow), {!quietRow && chips}, the ring for Codex's look) and this branch's removal of the speed state and SpeedToggleHost wrapper, so chips go in unwrapped (FastToggle.tsx stays deleted; nothing else imports it). - composerLocation.css, context ring: kept this branch's margin-inline-start: 0 and its comment (no 8 px margin on top of the button's inset), and noted #23785. Base #24138 raised the row's pill inset from 4 to 8 px, so the ring's glyph now sits 13 px after the effort, not 9. - test/composer-model-quiet.test.ts: the ring-gap bound follows #24138's inset (<= 14 px, was <= 10); the name and header comment say so. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo (2026-10-22): "this isn't glass? and the highlight pill is too small and i said to make it symbol... where are the changes... are they already in..."
His screenshot is the composer's mode button ("Full access ⌄") and its mode menu (Normal / Auto / Full access) from NIGHTLY 3955ea8. This PR fixes one part: the highlight pill is too small. The other two parts are already covered (below).
What changed: the quiet row's hover pill
Under the composer box, the mode chip on the left and the model/effort chip on the right are text chips. Their hover, open and press pill was padded only 4 px from the text (
.acpmux-composer-foot { --acpmux-row-inset: 4px }), so the pill hugged the label like a sliver. It is now 8 px, the inset of the native selection pill (an NSMenu row's highlight; Codex's and ChatGPT's mode chip).Before → after (gallery
agent-pane.composer-row, Chromium at 2x, hovered):(Captures:
/tmp/glass-regressions/captures/pill-glass-symbol/{before,after}-{mode,model}-{dark,light}.pngon cosmic-gray.)The other two parts of the ask are already in flight
git merge-tree)..ui-popup.ui-glass(cmux NEXT: composer, messages, menus, cards and the Inspector are liquid glass #23477), and his NIGHTLY (3955ea8) already contains cmux NEXT: composer, messages, menus, cards and the Inspector are liquid glass #23477. The remaining "reads solid" part is the menu glass tint and blur (--surface-menu, the native menu's heavier blur), which is lucasr1b's cmux next: menus, pickers and popovers are liquid glass like the native context menu #23066 (menus, pickers and popovers are liquid glass like the native context menu). Not touched here, per the no-overlap rule.Tests
webviews/test/composer-foot-pill-inset.test.ts: the foot's inset is 8 px, chips pad by the inset, and the row padding and context ring are compensated. Red on base (1 fail: inset 4), green on head (4 pass).webviews/test/composer-row-rhythm.test.tsnow also measures each foot chip's pill edge to its text in real Chromium. Red on base: "foot: mode's pill starts 4.0 px before its text, not 8 px" (and model) at every width. Green on head: 8/8.Observed (huge-blue,
CMUX_BROWSER_TESTS=1, on the head)composer-foot-pill-inset 4/4, composer-row-rhythm 8/8, composer-footer-plain 19/19, composer-claude-split 18/18, composer-row-layout 29/29, composer-footer-essentials 3/3, quiet-access-chip 4/4, composer-chip-plain-rest 4/4, composer-chip-press 49 pass / 0 fail, composer-turn-cycle 6/6, composer-caret-focus 42/42, agent-pane-bottom-stack 2/2.
test/lit-glyph-css.test.tsfails on feat-cmux-next for.acpmux-fast[aria-pressed="true"](cmux NEXT composer: Codex keeps its fast-mode bolt left of the mic; Claude's Fast mode stays in the model menu #23742).No capture: webview-only change (agent pane CSS); gallery before/after above.
Leo-ask: ask-608336bd91
Agent session: cosmic-gray
🤖 Generated with Claude Code