Skip to content

fix: drop the palette combination that looked unthemed - #39

Merged
liogi merged 1 commit into
mainfrom
fix/colour-visibility
Sep 4, 2026
Merged

liogi merged 1 commit into
mainfrom
fix/colour-visibility

Conversation

@liogi

@liogi liogi commented Sep 4, 2026

Copy link
Copy Markdown
Owner

A screenshot made it obvious: one worktree read as clearly coloured, the other as barely touched.

The dull, dark quarter of the palette — saturation 0.42, lightness 0.22 — sits ΔE 22 from VS Code default dark chrome. Close enough to pass for an unthemed window.

That is the inherent tension: every colour has to be dark because white text must stay readable on it, and the default chrome is dark too. The fix is not to widen the space but to stop using the corner where the two meet.

four combinations three
Worst case vs default chrome ΔE 22 ΔE 27
Collisions among four worktrees 7% 7%
White-text contrast 4.53:1 4.53:1

Distinctness costs nothing; visibility improves.

The property had no test

Which is why the palette shipped with it. Every existing test measured worktrees against each other; none measured them against no colour at all. Reintroducing the fourth combination now fails at ΔE 22.

Note

Existing worktrees change colour the next time gwt add or gwt open themes them. feature-a goes from #213f50 to #16425a.

163 tests.

A screenshot made it obvious: one worktree read as clearly coloured, the
other as barely touched. The dull, dark quarter of the palette
(saturation 0.42, lightness 0.22) sits ΔE 22 from VS Code's default dark
chrome — close enough to pass for an unthemed window.

Every colour here is dark because white text has to stay readable on it,
and the default chrome is dark too, so the two can drift close. That is
the constraint; the fix is to not use the corner of the space where they
meet.

Three combinations instead of four. Worst case against the default rises
to 27, WCAG holds at 4.53:1, and distinctness between worktrees is
unchanged at seven percent collisions among four.

The property had no test, which is why the palette shipped with it. It
does now: reintroducing the fourth combination fails at ΔE 22.

Existing worktrees will change colour the next time they are themed.
@liogi
liogi merged commit 8e58fac into main Sep 4, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant