forge: in-app light / e-ink theme toggle #8
No reviewers
Labels
No labels
bug
docs
enhancement
good first issue
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
pedromcaraujo/forge!8
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/light-eink-theme"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Pedro uses Forge a lot on a Boox (e-ink), where the dark-only Tokyo Night theme
is close to the worst case: reflective displays render best as black-on-white,
dark backgrounds look muddy, and blinking cursors / glows / shadows ghost badly.
This adds a light / e-ink theme toggle in the sidebar header that flips both
styling layers:
:root[data-theme="light"]palette. Introduced semantictokens (
--sel-bg,--sel-fg,--on-accent) so text-on-coloured-surfacesflip cleanly instead of hardcoding
#15161e/#fff.frame.contentWindow.termhandle. The deploy's configured dark palette(
myServices.forge.theme) is captured once asbaseTheme, so toggling backto dark restores a customised palette exactly — no duplicated theme in JS.
the palette drop-shadow, and the dropzone transition.
localStorage), restored before first paint to avoid a flash,and re-applied on every iframe load so it survives channel switches. Updates
the PWA
theme-colortoo.Test plan
reload, survives channel switches.
trails on the status dot / palette.
myServices.forge.themedeploy round-trips (light → darkrestores the configured palette).