Originally created by: kristofferR
Problem
The app icon choice is two small pills (30px icons) plus a separate Light / Dark / Match theme switch. You never see the icon you will get, and style and variant are picked in two places that don't explain each other.
Design (approved: selector 1)
Mocks: https://plans.kristofferr.com/d/sg4cwqvputno (App icon selector, option 1)
- The four icons as tiles (52px art): Color, Color dark, Mono, Mono dark. Clicking a tile picks exactly that icon.
- "Different icon in dark mode" switch in the left column under "App icon". It stays in the same place on and off.
- Off: one row of tiles; the picked icon is used always.
- On: two rows labelled "Light mode" and "Dark mode", each with all four tiles; pick one per row. Any pair works (Color in light, Mono dark in dark).
- "Dark mode" means what Match theme follows today (the page's light/dark).
- No "The unread badge shows on every icon." hint. Keep the Linux-only note that the app launcher keeps the installed icon.
Settings model
Replace app_icon_style + app_icon_variant with:
app_icon: color-light | color-dark | mono-light | mono-dark
app_icon_dark: same set, or empty for "same icon always"
Migration on load: S + light → app_icon = S-light; S + dark → app_icon = S-dark; S + auto → app_icon = S-light, app_icon_dark = S-dark. Platform behaviour (macOS Dock swap, Windows/Linux window icons, badge drawn separately) is unchanged.
Testing
- Unit tests for the migration and for picking the icon from (
app_icon, app_icon_dark, dark?).
- Switch light/dark with the switch on and off on all three platforms; the Dock / taskbar / window icon follows.
Part of [#434]. Ref [#369]
Originally posted by: kristofferR
Landed in [#438] (merged to
main, shipped in v3.0.0). App icon is now four tiles (Color, Color dark, Mono, Mono dark), and "Different icon in dark mode" adds a second row, so light and dark mode each get their own icon.app_icon/app_icon_darkreplace the old style and variant keys, and old settings migrate on load (covered by unit tests).Still to do: a manual check in the real Settings window on all three platforms.
Related
Tickets:
#438Ticket changed by: kristofferR