From aad1a6c3f0f31a25378525fdd46c641a1f14c9ad Mon Sep 17 00:00:00 2001 From: Psychotoxical <171614930+Psychotoxical@users.noreply.github.com> Date: Sun, 7 Jun 2026 12:22:54 +0200 Subject: [PATCH] fix(themes): route remaining UI colours through theme tokens (#1014) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(themes): route remaining UI colours through theme tokens An audit found several surfaces still wired to the fixed Catppuccin palette or hardcoded hex, so community themes could not recolour them: the 5-star rating, the global search field, the gradient-text flourish, badges and category-avatar text, and the What's New page + sidebar banner. Rewire them to existing contract tokens — no new tokens, and the built-in themes look identical (the values match). Community themes now control these areas. Also fixes device-sync rows referencing an undefined --bg-secondary (they rendered with no background); they now use --bg-card. * docs(themes): note the theme-coverage PR in the Theme Store entry Add PR #1014 to the still-unreleased Theme Store changelog and credits entry, alongside the other follow-ups. --- CHANGELOG.md | 2 +- src/config/settingsCredits.ts | 2 +- src/pages/Composers.tsx | 6 +- src/styles/components/device-sync.css | 4 +- src/styles/components/page.css | 55 +++++++++---------- .../components/what-s-new-banner-page.css | 28 +++++----- src/styles/themes/badge.css | 2 +- src/styles/themes/input-search.css | 4 +- src/styles/themes/star-rating.css | 12 ++-- src/styles/themes/utility-classes.css | 2 +- 10 files changed, 57 insertions(+), 60 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 797d4dc0..0465cf3e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,7 +56,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Themes — community Theme Store -**By [@Psychotoxical](https://github.com/Psychotoxical), PR [#1009](https://github.com/Psychotoxical/psysonic/pull/1009), [#1011](https://github.com/Psychotoxical/psysonic/pull/1011), [#1012](https://github.com/Psychotoxical/psysonic/pull/1012), [#1013](https://github.com/Psychotoxical/psysonic/pull/1013)** +**By [@Psychotoxical](https://github.com/Psychotoxical), PR [#1009](https://github.com/Psychotoxical/psysonic/pull/1009), [#1011](https://github.com/Psychotoxical/psysonic/pull/1011), [#1012](https://github.com/Psychotoxical/psysonic/pull/1012), [#1013](https://github.com/Psychotoxical/psysonic/pull/1013), [#1014](https://github.com/Psychotoxical/psysonic/pull/1014)** * New **Settings → Themes** tab: pick a theme, set the day/night scheduler, and browse a built-in **Theme Store** to install, update and uninstall community themes — with search, a dark/light filter, and full-size thumbnail previews. * The app now bundles six core themes (Catppuccin Mocha & Latte, Kanagawa Wave, Stark HUD, and the colour-blind-safe Vision Dark / Vision Navy); every other palette installs on demand from the [psysonic-themes](https://github.com/Psysonic/psysonic-themes) repo. Installed themes are saved locally and apply instantly at startup, even offline. diff --git a/src/config/settingsCredits.ts b/src/config/settingsCredits.ts index 5ce2ee68..ce32eb1c 100644 --- a/src/config/settingsCredits.ts +++ b/src/config/settingsCredits.ts @@ -356,7 +356,7 @@ const CONTRIBUTOR_ENTRIES = [ 'Performance Probe: Monitor/Toggles redesign, live CPU/RSS/thread metrics, overlay pins and sparklines, macOS snapshots (PR #890)', 'Performance Probe: opt-in thread-group CPU poll toggle and includeThreadGroups IPC fix (PR #891)', 'Queue: switchable display mode — Queue (upcoming only) vs Playlist (full list), with header toggle and settings entry (PR #922)', - 'Community Theme Store: semantic-token refactor, dedicated Themes tab with day/night scheduler, install/update/uninstall, local .zip import with full contract validation, and 80+ palettes moved to an on-demand CDN repo (PR #1009, #1011, #1012, #1013)', + 'Community Theme Store: semantic-token refactor, dedicated Themes tab with day/night scheduler, install/update/uninstall, local .zip import with full contract validation, and 80+ palettes moved to an on-demand CDN repo (PR #1009, #1011, #1012, #1013, #1014)', ], }, { diff --git a/src/pages/Composers.tsx b/src/pages/Composers.tsx index cc2da0fe..f63432e7 100644 --- a/src/pages/Composers.tsx +++ b/src/pages/Composers.tsx @@ -71,7 +71,7 @@ function ComposerRowAvatar({ artist }: { artist: SubsonicArtist }) { className="artist-avatar artist-avatar-initial" style={{ background: color, border: 0 }} > - {nameInitial(artist.name)} + {nameInitial(artist.name)} ); } @@ -351,7 +351,7 @@ export default function Composers() {