Remove ticket 047 (implemented: unified style presets, colour + layout as one concept)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XFUNZwCvz3kcod3352ZR2o
This commit is contained in:
Hugh Kaznowski
2026-09-06 02:17:39 +01:00
co-authored by Claude Sonnet 5
parent 8ab5edc96b
commit 5cb2dfde13
@@ -1,49 +0,0 @@
# 047 — Treat presets as full style makeovers (not just color schemes) in UI and impl
## Summary
Tickets 012 and 020 already unified the *data model* for colour schemes
and custom CSS: `src/settings.rs` stores both built-in `ColorScheme`
variants and `CssEntry` (`Imported`/`Linked`) as equally-selectable themes
via `custom_theme_id`, and the doc comment at `src/settings.rs:44` notes
ticket 020 removed the old "use as theme" vs. "always-on overlay"
distinction. However, built-in presets themselves
(`webapp/src/lib/themes.ts` `BUILTIN_THEMES`) are still defined purely as
`ThemeVars` records of `--c-*` color variables — they can only ever
restyle colors, not layout — so the underlying premise of the wishlist
("presets are literally entire style makeovers that just happen to look
like color changes") isn't actually true of the built-ins yet, and the
settings UI may still read as "pick a colour scheme, optionally add CSS on
top" rather than "pick one style, which can be as small as a palette or as
large as a full redesign."
## Scope
- Audit the settings UI (`webapp/src/lib/useSettingsPanel.ts`,
`webapp/src/App.tsx:126` and wherever the panel is rendered) for
language/layout that still implies "colour scheme" and "CSS" are two
separate features, and rework it to present a single list of
interchangeable style presets (built-in or user-provided), any of which
may be pure-palette or a full layout override.
- Confirm/ensure a user-provided style is not constrained to variable
overrides — i.e. an imported/linked CSS entry can target arbitrary
selectors and restructure layout, not just override `--c-*` variables
(verify against `generateThemeCss`/`parseThemeCss` in
`webapp/src/lib/themes.ts` and how `CssEntry` is applied to the
document).
- No new built-in presets need to be layout-altering; this ticket is
about removing the artificial ceiling and the UI framing, not about
shipping a redesigned built-in theme.
## Acceptance criteria
- Settings UI presents colour schemes and custom/imported CSS as one
unified list of selectable "styles," with no leftover UI copy or layout
implying they're separate concepts.
- A user-supplied CSS entry can override layout-affecting rules (not just
color variables) and have it take effect, verified manually with a
sample stylesheet that changes more than colors.
## Depends on
None (builds on tickets 012, 020 — already merged).