Theme support #54
Labels
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
SBDeveloper/medley#54
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Agent Brief
Category: enhancement
Summary: Let the user choose a Theme (Scheme + Accent) in settings, and make the whole UI honour it.
Current behavior:
The UI is a single hard-coded dark palette defined as design tokens on
:rootwithcolor-scheme: dark. There is no appearance setting and no handling ofprefers-color-scheme. About 26 colours in components bypass the tokens (purple gradients, white hover tints, cover-art scrims,#fff), so they would look wrong under a light Scheme or a different Accent. The pagetheme-colormeta is a fixed dark value.Desired behavior:
GLOSSARY.md.prefers-color-scheme, including live changes while the app runs.localStorage(same approach as the sidebar layout), and applied before first paint so there is no flash of the wrong Theme. Storage being unavailable must degrade to the default without error.theme-colormeta and the Tauri window theme. Nothing requiring new per-platform code.Key interfaces:
Acceptance criteria:
theme-colormeta and Tauri window theme follow the resolved Scheme.npm run checkandnpm testpass.Out of scope:
Implemented in
f56b026: Scheme (System/Dark/Light) + six Accents in Settings → Appearance, stored per device, applied before first paint, AA contrast tested against app.css. Known limits: on Linux, returning to System after an explicit choice keeps the last GTK theme until restart; the Big player backdrop wash follows the Scheme.