The status bar follows the reader's theme, the bookmark chips lose their words (v0.61.1) - #45
Merged
Merged
Conversation
…eir words (v0.61.1) - Status bar (PWA): applyTheme rewrote only the FIRST theme-color tag — the light-scoped one. A UA reads the first tag whose media MATCHES, so a dark-mode phone under a light reader theme kept Theme::Dark's paper in its live tag; Chrome chose light status-bar icons for it and drew them over the cream the page paints under its transparent bar — clock and battery washed out. Every tag now carries the resolved paper; the boot script does the same from the cached palette for an explicitly chosen theme (never for "follow the device", whose media pair is already right). Pre-existing, several releases old. E2e: theme-color.spec.ts. - Bookmark chips: NO TEXT — round icon chips (44px floor), the words on aria-label/title and in the tap's toast. Several visible at once, centred while they fit and left-anchored scrolling once they don't, so a chip cut at the edge says "more" (the one-per-page pager hid that there were others). One flag per running plan; "+N more" is gone. plans-today/bookmarks specs read the aria-label; bookmarks.spec pins no-text and several-in-viewport. - Both new regression tests mutation-tested against rebuilt bundles. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
glendonjklassen
enabled auto-merge (squash)
August 25, 2026 19:40
glendonjklassen
added a commit
that referenced
this pull request
Aug 25, 2026
The v0.61.1 tag was pushed 55 seconds before PR #45's auto-merge finished, so it sits on the v0.61.0 commit; the release workflow's version guard refused it (Cargo.toml said 0.61.0), and the repository ruleset makes tags immutable, so it cannot be moved. Nothing in the tree changes but the number: 0.61.1's work ships as v0.61.2, tagged after the merge this time. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
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.
Two UAT items from v0.61.0 on-device.
Status bar washed out (pre-existing, several releases old)
session.applyTheme()rewrote only the firsttheme-colormeta tag — the light-scoped one. A UA takes the first tag whose media matches, so on a dark-mode phone the live tag is the second, dark-scoped one, which never changed: under a light reader theme it still said Theme::Dark's paper. Chrome picked light status-bar icons for that stale value and drew them over the cream the page paints beneath its transparent bar — clock, battery and signal washed out. Every tag now carries the resolved paper; the inline boot script does the same from the cached palette for an explicitly chosen theme (never for "follow the device", where the media pair is already the right pre-script answer and last session's cache may not be).manifest.spec.ts's pre-script pair check still holds.Bookmark chips: no text, several visible
The row above the canon strip is round icon-only chips now (44px floor): a flag per running plan, then history / sun / crescent / group for the seatings. The words ride each chip's
aria-label/titleand the toast a tap raises ("Sunday morning bookmark"). Several chips show at once — centred while they fit, left-anchored and scrolling once they don't, so a chip cut at the edge says there are more. The one-tile-per-page pager is gone, and so is "+N more" (every running plan has its own flag).Verification
npm run checkclean;cargo fmt --checkclean (no Rust changes beyond the version bump).bookmarks,plans-today, newtheme-color,manifest, plusa11yandtouch-targetsfor the icon-only buttons).theme-color.spec; putting text back on the chips and making them one-per-page fails exactly the twobookmarks.spectests that pin those.FEATURE-MANIFEST: bookmarks-strip section rewritten for icon-only; new status-bar paragraph under Constants + styling.
🤖 Generated with Claude Code