fix(dock): one washed-out fill per tab, and a border that says which is current #112
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lz/agent-nexus!112
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/tab-colour"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
First of four addressing
sidebar-issuesagainst the release candidate.The problem
dockview paints
background-coloron.dv-tab, which is the parent of the divSessionTabrenders — so--accent-dimon the focused group's visible panel composited under the session wash rather than replacing it. The current tab rendered as yellow-green tinted by its session's hue: two colours over the same pixels, neither readable as itself.Measuring also turned up something worse than the original report: dockview's
--dv-activegroup-visiblepanel-tab-color: var(--accent)won on the active tab, so the selected tab read as the dimmest in the strip while the two unselected ones showed their names in full-strength colour.The fix
A tab now has exactly one fill — its session wash — and which tab is current is a 2px bottom border in that same hue, reserved transparent on every tab so selecting one never shifts its text.
Text keeps its session colour on every tab, active included. Selection is the border's job; identity is the micro-caps line's and the glyph's, unconditionally.
--dv-*-tab-background-color→transparent--dv-*-tab-color→--text/--muted, mirroring what the inner div sets.dv-tabpadding zeroed inside the tabs container — it inset the tab by0.25rem 0.5rem, so the wash stopped 4px short of the edges and the border would have floated above the strip's baselineVerification
Browser, against a seeded instance, measured off the live DOM: idle tabs carry their session hue on the micro-caps line and glyph with a transparent border and a 0.06 wash; the active tab carries the same hue at 0.14 plus a 2px border in it and a
--textname. No--accentanywhere in the strip, at 1500px and at 420px.Gates: typecheck 4897 files / 0 errors, lint clean, 120 files / 1200 tests.
Notes
--dv-activegroup-hiddenpanel-tab-coloris not inert —.dv-tabs-overflow-dropdown-default(the "+N more" control dockview renders once the strip overflows) reads it directly. Verified live with five panels docked at 900px. There's a comment on the block saying so, because the earlier rationale invited deleting it as dead.One deliberate loss: dockview distinguished the active tab of the focused group from that of an unfocused one. With all four backgrounds transparent those now look identical — split the dock into two groups and nothing says which has keyboard focus. Left out rather than inventing a fifth signal for a post-split-only case; cheap to add back as a dimmed border.
Based on
rc/sidebar-96: the tab wash comes fromfeat/target-menuat the base of the #96 stack, so this does not apply tomainas it stands.