diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-29 17:20:28 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-29 17:20:28 +0100 |
| commit | afa0e6e7402ba19688348ab1c41b30bdf14d2d49 (patch) | |
| tree | 545a3bae8a870a3ed5b90c5e509a914f0f9ab138 /docs | |
| parent | 6b875524f57d7bbbe4e7c6b6554a4aa929eef567 (diff) | |
| download | quickshell-afa0e6e7402ba19688348ab1c41b30bdf14d2d49.tar.gz quickshell-afa0e6e7402ba19688348ab1c41b30bdf14d2d49.zip | |
docs: the wallpaper engine and the burn
The appearance README gains the burn (the cover, the covered()
handshake and why, the shader cache trap) and the engine (sources,
shuffle, light run, homes, the draft page, where its state lives and
what starts it). The spec records what changed while building it: Prefs
instead of list files, a page of its own, folder sources, the header
buttons, the cover handshake.
AGENTS.md gains the Field.edited trap, which applies to every page with
a field and a button: a click does not end editing, so the value a
button acts on must be read on every change.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/superpowers/specs/2026-10-29-wallpaper-engine-design.md | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/docs/superpowers/specs/2026-10-29-wallpaper-engine-design.md b/docs/superpowers/specs/2026-10-29-wallpaper-engine-design.md index aac3b1c..425a99d 100644 --- a/docs/superpowers/specs/2026-10-29-wallpaper-engine-design.md +++ b/docs/superpowers/specs/2026-10-29-wallpaper-engine-design.md @@ -97,3 +97,19 @@ confirmed by eye on the next accent change. Sequential order, per-screen intervals, persisting the shuffle, rotation from a terminal `wallp` without the desktop shell. + +## Changes during implementation + +- The lists live in `Prefs` (`wallEngine` in `desktop.json`), not in + `~/.config/keystone/wallpapers/*.list`: a list can be empty, and an empty + `FileView` write writes nothing. +- The engine has a page of its own in the Appearance group rather than a + section on the Wallpaper page, so the picker keeps its height. +- Each screen can draw from one gallery folder instead of its hearts + (`folderH`, `folderV`), asked for once the gallery turned out to hold + only wide images. +- The page commits like the other settings pages: interval and sources are + a draft, and the header has Reset, Stop and Start (Apply while running) + in place of an on/off switch. Start changes the wallpapers at once. +- `Wallpapers.run()` holds wallp until the burn's covers are drawing, which + removed a flash of the new picture before the burn. |
