Repository navigation
Support light and dark mode in the scanning panels - #1214
Merged
Merged
Conversation
The keyboard, the mouse panel, Home and the action menus now follow a shared Panel theme in scanning Appearance: Match system, Light or Dark. Match system reads the main window's theme at startup and on every ThemeChanged event, and each tile carries its resolved appearance so the next tick redraws it. Light panels use a deeper shade of the scanner colour, with white drawn as dark grey, so highlights stay visible. Closes #1213 Co-Authored-By: Claude Fable 5.1 <[email protected]>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Keeps text_rgb in use on every platform so the macOS build has no dead code. Co-Authored-By: Claude Fable 5.1 <[email protected]>
Synced documents round-trip exactly, so a new scan preference needs a schema step: version 4 documents gain panelTheme: system on the way in, and older installs are told to update instead of seeing an invalid document. The light-panel yellow highlight is darker so it clears 3:1 against a white key. Co-Authored-By: Claude Fable 5.1 <[email protected]>
GDI writes text pixels with alpha 0, which the premultiplied layered window adds to whatever is behind the panel. White text got away with it; dark text on light panels would vanish over a light window. Copy the source alpha back after drawing, in production as well as in fixtures. Co-Authored-By: Claude Fable 5.1 <[email protected]>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1213
What changes
ThemeChangedevent. Each tile carries its resolved appearance, so the next scan tick redraws the panels without a restart.panelThemebesidepanelSize. Synced settings schema bumped 4 → 5 with an upgrade step that gives version 4 documentspanelTheme: system; older installs reading a version 5 document are told to update. Unknown values fall back to Match system, and an area can never override it.Validation
npm run lint,npm test(310 vitest + 19 node),npm run build: pass.cargo fmt --check,cargo clippy --all-targets -D warnings,cargo test(840 passed): pass.aarch64-apple-darwin, type-check only from Windows): pass.sitebuilds.export_panel_size_fixturesexports each panel in both themes through the real Windows text renderer. Medium and Small mouse and Medium keyboard, light and dark, checked by eye.Not covered here: a real macOS run, and a live system theme flip while panels are open.
🤖 Generated with Claude Code