Skip to content

fix(web): make hover states visible in the Solarized dark theme - #51

Merged
DanielGGordon merged 1 commit into
mainfrom
t3code/fix-project-hover-highlight
Aug 19, 2026
Merged

fix(web): make hover states visible in the Solarized dark theme#51
DanielGGordon merged 1 commit into
mainfrom
t3code/fix-project-hover-highlight

Conversation

@DanielGGordon

Copy link
Copy Markdown
Owner

Problem

Hovering a project in the sidebar's project picker produced no visible highlight — only the currently-scoped project showed a tint (its data-checked background), so the menu read as inert.

Root cause

Solarized ships only two dark background tones (base03/base02), and the scheme block assigned --card, --popover, --secondary, --muted and --accent the same literal #073642. Every hover surface therefore repainted its host surface in its host surface's own color:

  • data-highlighted:bg-accent — all menu/dropdown items (apps/web/src/components/ui/menu.tsx:161)
  • hover:bg-accent — 52 call sites, including the per-project action button
  • hover:bg-muted — 19 call sites across settings, right-panel tabs, git controls, toasts

Sidebar rows were unaffected because --sidebar-row-hover is already an alpha overlay, which is why the breakage looked specific to the menu.

Fix

Express --secondary/--muted/--accent as translucent lifts of the Solarized foreground, mirroring what the default dark theme already does (--accent: white/4%), and darken --accent-foreground to #eee8d5 so text lifts along with the surface.

Composited over the app background #002b36, 7–8% of #93a1a1 lands on ~rgb(10-12, 54, 65) — within a point or two of the old #073642 — so flat panels and muted surfaces are visually unchanged. Over cards and glass popovers they now sit a step brighter. --accent at 12% stays clearly above the project picker's checked background (foreground/8%), so hovered and selected rows remain distinguishable.

Testing

Traced statically; not verified in a browser (per-request, the spare-port test deploy was skipped). Solarized light is untouched.

🤖 Generated with Claude Code

The Solarized dark block assigned --card, --popover, --secondary, --muted
and --accent the same literal #073642, so every hover surface repainted
its host surface in its own color. Menu items (data-highlighted:bg-accent),
row action buttons (hover:bg-accent) and the hover:bg-muted rows across
settings, tabs and git controls had no visible hover at all -- most
noticeably the project picker, where only the checked row was tinted.

Express secondary/muted/accent as translucent lifts of the Solarized
foreground instead, mirroring what the default dark theme already does.
Composited over the app background these land within a point or two of
the old #073642, so flat panels are unchanged; over cards and glass
popovers they now lift. --accent at 12% also stays clear of the project
picker's checked background (foreground/8%).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@DanielGGordon
DanielGGordon merged commit 77700e2 into main Aug 19, 2026
2 of 6 checks passed
@DanielGGordon
DanielGGordon deleted the t3code/fix-project-hover-highlight branch August 19, 2026 17:22
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S labels Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant