Repository navigation
Kiosk: replace the wallpapers with scenic landscapes - #6
Merged
Merged
Conversation
The old set was a hand-drawn circuit board, a hex tile, three flat gradients and a synthwave scene whose header text was cropped off and whose grid never animated. The picker showed gradients instead of the wallpapers, and icon labels used the theme's text colour, so they went dark-on-dark in the light theme. - scripts/wallpapers.py draws eight layered scenes (mountains at dusk, moonlit forest, dawn at sea, kelp forest with a whale, desert dusk, northern lights, the Lascaux frieze on a torchlit wall, plain graphite) into src/kiosk/wallpapers/*.svg, anchored to the bottom edge so any screen shape keeps the horizon, with grain against banding. - The picker shows each real wallpaper as its thumbnail; its strings are translated (French appended to fr.json). - Desktop icon labels are always white with a shadow. - Default dimming 25% -> 10%; stored ids from the old set fall back to the new default. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LNy4Cm6Yon9iovsqAFxxtf
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LNy4Cm6Yon9iovsqAFxxtf
Conflicts in docs/changelog.json and ui/src/i18n/fr.json: both sides added entries in the same place. Kept all of them: the kiosk changelog entry stays on top, and the kiosk French strings come after main's new ones at the end of fr.json. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LNy4Cm6Yon9iovsqAFxxtf
EveAeternam
marked this pull request as ready for review
October 13, 2026 02:31
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Evie · project thread
What changed and why
Before: kiosk mode's wallpapers were a nearly invisible circuit-board schematic, a hex tile, three blurry flat gradients and a synthwave scene whose header text got cropped off and whose grid never animated (the
<set attributeName="begin">trick doesn't work). The picker showed made-up gradients instead of the wallpapers, and desktop icon labels used the theme's text colour, so they went dark-on-dark in the light theme.After: eight drawn landscapes (mountains at dusk as the new default, moonlit forest, dawn at sea, kelp forest with a whale, desert dusk, northern lights, the Lascaux frieze on a torchlit cave wall, plain graphite). The picker shows each real wallpaper as a 16:10 thumbnail and is translated; icon labels are always white with a shadow.
How:
ui/scripts/wallpapers.py(no dependencies, seeded so re-runs are stable) draws the scenes intoui/src/kiosk/wallpapers/*.svgat 2560×1600 withxMidYMax slice, so the horizon stays in view on 16:9, ultrawide and portrait screens; the top third stays calm for the icons, and a fine grain stops dark gradients banding. It reuseswhale.svgandlascaux-frieze.svgfrom the theme scenery.wallpapers.tsimports them with?url; ids from the old set fall back to the default (minimalmaps tographite). Default dimming drops from 25% to 10% since the scenes are already dark where the icons sit.How you tested it
scripts/check.shpieces:tsc --noEmitclean; regression suite 425/427, the two failures (integrity_testbackup permissions under root,smoke_test/api/modelswith no Ollama) are environment-only and untouched by this diffdocs/changelog.jsont('…')with French lines appended toui/src/i18n/fr.json(not re-sorted)npm run buildpasses. Each wallpaper was rendered in Chromium at 1920×1080 and 800×1280, and the picker plus desktop icons were rendered in a harness page. Not yet tried on the Spark's real kiosk display.Screenshots
Before/after sheets and the new picker are attached in the project thread.
New dependencies
None.
🤖 Generated with Claude Code
https://claude.ai/code/session_01LNy4Cm6Yon9iovsqAFxxtf
Generated by Claude Code