Skip to content

Release v0.106.1 — the room card's Cancel no longer runs off the card - #106

Merged
tesseractAZ merged 1 commit into
mainfrom
fix/card-wakeup-cancel
Sep 23, 2026
Merged

tesseractAZ merged 1 commit into
mainfrom
fix/card-wakeup-cancel

Conversation

@tesseractAZ

Copy link
Copy Markdown
Owner

A room card with a pending wake-up put the clock, the time field, Set and Cancel on one line. The time field is deliberately never shrunk (a native time field that is too narrow clips its AM/PM), so at the grid's narrowest card, or in a browser that draws a wider field, the line overflowed and Cancel was cut off at the card's edge.

  • .wakerow now wraps, and .wakerow .wkcancel { flex: 1 0 100% } gives Cancel a full-width line of its own, placed after .wakerow .ringbtn, which has the same specificity.
  • At the 215 px card minimum even Set overflowed (1 px in Chrome, more in Safari); it now moves under the time field.
  • scripts/build-screenshots.py copied INDEX_HTML as source text, so the page's escapes were never processed. The time regex reached the page as /^\\d.../ and matched nothing, so no card in a docs screenshot ever showed its pending wake-up. The literal is now evaluated with ast.literal_eval.

Verified by rendering the real page in a browser at 1000, 929 (215 px cards), 704 and 375 px: no control overflows its card. Before the fix, Cancel overflowed by 36 px at 1000 px. At 929 px it overflowed by 54 px, and every Set button by 1 px. The new tests pin the wrap, the own-line Cancel and its rule order, and the screenshot builder's escaping; each was mutation-checked.

🤖 Generated with Claude Code

The wake-up row on a room card held the clock, a time field that is
deliberately never shrunk, Set and Cancel on one line. At the grid's narrowest
card, or with a browser's wider time field, the line was wider than the card
and Cancel was clipped at its edge. The row now wraps, and Cancel always takes
a full-width line of its own, after the generic .wakerow .ringbtn rule it
would otherwise lose to.

scripts/build-screenshots.py extracted INDEX_HTML as source text, so the page's
escapes were never processed: the served regex /^\d{1,2}:\d{2}$/ reached the
screenshot as /^\\d.../, matched nothing, and no card in a documentation
screenshot ever showed a pending wake-up. The literal is now evaluated.

Verified in a browser at 1000, 929 (the 215 px card minimum), 704 and 375 px:
no control overflows its card.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tesseractAZ
tesseractAZ merged commit 9edb525 into main Sep 23, 2026
10 checks passed
@tesseractAZ
tesseractAZ deleted the fix/card-wakeup-cancel branch September 23, 2026 20:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant