Add dark theme for settings UI - #292
Open
quangdat99x wants to merge 2 commits into
Open
Conversation
Switches the MaterialDesignExtensions base theme from Light to Dark and repalettes the centralized brushes in App.xaml (chrome, primary/secondary hues) to a dark background with teal accents. Pins dark text on the few intentionally light "chip" controls (hotkey input, ExtendedButton links, Lookupper banner) so they stay readable against the new dark chrome. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Chaobs
referenced
this pull request
in Chaobs/Translumo-LLM
Jul 23, 2026
…ort of upstream PR #292) Introduce ThemeService that toggles between light and dark modes at runtime without recreating App.xaml brush resources. Key design points: - Mutates SolidColorBrush.Color on existing app-level brushes (WPF Freezable change notification propagates to all StaticResource references). - Swaps MaterialDesignThemes base theme via PaletteHelper.SetBaseTheme (Theme.Dark/Theme.Light) and MaterialDesignExtensions light/dark dict. - Installs fresh mutable brushes when built-in ones are Frozen. - Persists preference to config/theme.json independently of ConfigurationStorage. Contrast/visibility fixes across 4 iterations: - MaterialDesignBody light set to pure black (#000000, AAA 21:1) so right-side Labels on Language/Appearance/OCR/Hotkeys pages stay legible in light mode. - SettingsView side panel + SimpleDialog title bar use ChromeBackgroundBrush; SettingsView LabelForeground switched to DynamicResource MaterialDesignBody. - LightLabel Foreground switched to DynamicResource MaterialDesignBody. UI additions: AppearanceSettingsView theme ToggleButton bound to IsDarkTheme; DarkTheme localized strings added for en-US, ja-JP, ru-RU, zh-CN, zh-TW. No impact on LLM, voice switcher, or existing UI layout.
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.
Summary
.gitignoreentry for a localrun/folder (a tidy, ready-to-launch copy of the build output used during manual testing; not meant to be tracked).Why
Requested UI improvement: give Translumo a dark mode option for its Settings window instead of the current light cyan/mint theme.
Test plan
dotnet publish Translumo.sln -c Release(net8.0-windows, self-contained win-x64).🤖 Generated with Claude Code