feat(settings): expose custom color palette (closes #1586) - #3600
Open
ksh2177 wants to merge 1 commit into
Open
Conversation
The engine for this has existed in switchwall.sh all along: `--color` picks a color with hyprpicker and generates the entire theme from that seed instead of the wallpaper (matugen `color hex`), persisted as appearance.palette.accentColor so it survives light/dark toggles; `--color clear` returns to wallpaper-derived colors, and picking a new wallpaper already clears it too. All three theming paths (shell, terminal, Qt apps) flow through the same generation as wallpaper mode, so no new color-application code is needed. This adds the missing UI: a 'Custom color' button (shows the active hex when set) and a 'Back to wallpaper colors' button in Settings > Quick.
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.
Describe your changes
Closes #1586. Good news: the engine for this has existed in
switchwall.shall along — it just never had UI.switchwall.sh --colorpicks a color with hyprpicker and generates the entire theme from that seed instead of the wallpaper (matugen color hex), persisted asappearance.palette.accentColorso it survives light/dark toggles.--color clearreturns to wallpaper-derived colors — and picking a new wallpaper already clears the custom color too (existing behavior inmain()).This PR adds the missing UI in Settings → Quick: a Custom color button (shows the active hex when one is set) and a Back to wallpaper colors button, right under the scheme selector.
Daily-driven on my machine (Arch + Hyprland) — the seed persists across light/dark toggles and scheme changes, and clears as expected when choosing a new wallpaper.
Is it ready? Questions/feedback needed?
Ready. Possible follow-ups if there's interest (kept out to stay single-purpose): a generated-palette button (e.g. local HSV harmonies), and saving several palettes as reusable presets.