Phone: no full-screen live blur, a solid top strip, glass under Safari's toolbar (#445) #497

Closed
kayg wants to merge 4 commits from issue/445-no-bleed into dev
Owner

Refs #445, #476.

The band at the top of the phone's frosted screens came from the structure: a full-screen backdrop-filter sheet that touches the screen edge blurs pixels that are not there, so the first ~100px mix in the colour under the sheet, and the top bar added a second blur and tint on top.

What changes (phone, data-edge="glass"):

  • No live blur on the screens. The backdrop's picture layers are blurred once (filter on .blurred, with 96px of spare picture past each edge so the blur has picture to read) and the screens only tint. The floor and the dim stay outside the blur.
  • Top (lab variant 15): a solid, full-width, fixed strip in the edge colour (background-color, safe-top + 12px) with a short fade, Safari-only (the Home Screen app has no Safari bar, the picture simply runs on). The note's top bar blur (the old .glassy tint and blur) is now a progressive ramp with no tint, starting 8px inside the edge and shown only once text has scrolled under it.
  • Bottom (lab variant 14): no strip and no blur at the bottom edge. The strip under Safari's toolbar is the same blurred picture under the same tint, so the list runs on under the toolbar.
  • e2e: a solid fixed layer at an edge must be the page colour (Safari 26+ takes it), and the frosted screens have no bottom-strip check (the last row continues the page above it).

Evidence (simulator contact sheets, seam numbers, scroll timing) is on #445. Needs the real iPhone to confirm the Safari bars (lab #476).

Not merged on purpose: waiting for kayg.

🤖 Generated with Claude Code

https://claude.ai/code/session_019QGa6qjALuHyi8H1naGp6b

Refs #445, #476. The band at the top of the phone's frosted screens came from the structure: a full-screen `backdrop-filter` sheet that touches the screen edge blurs pixels that are not there, so the first ~100px mix in the colour under the sheet, and the top bar added a second blur and tint on top. What changes (phone, `data-edge="glass"`): - No live blur on the screens. The backdrop's picture layers are blurred once (`filter` on `.blurred`, with 96px of spare picture past each edge so the blur has picture to read) and the screens only tint. The floor and the dim stay outside the blur. - Top (lab variant 15): a solid, full-width, fixed strip in the edge colour (`background-color`, safe-top + 12px) with a short fade, Safari-only (the Home Screen app has no Safari bar, the picture simply runs on). The note's top bar blur (the old `.glassy` tint and blur) is now a progressive ramp with no tint, starting 8px inside the edge and shown only once text has scrolled under it. - Bottom (lab variant 14): no strip and no blur at the bottom edge. The strip under Safari's toolbar is the same blurred picture under the same tint, so the list runs on under the toolbar. - e2e: a solid fixed layer at an edge must be the page colour (Safari 26+ takes it), and the frosted screens have no bottom-strip check (the last row continues the page above it). Evidence (simulator contact sheets, seam numbers, scroll timing) is on #445. Needs the real iPhone to confirm the Safari bars (lab #476). Not merged on purpose: waiting for kayg. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_019QGa6qjALuHyi8H1naGp6b
Author
Owner

Replaced by #521 (same branch family, rebased on dev with document scrolling and the bottom-step fix). Closing this one.

Replaced by #521 (same branch family, rebased on dev with document scrolling and the bottom-step fix). Closing this one.
kayg closed this pull request 2026-10-17 04:25:46 +00:00
Some checks failed
CI / server (pull_request) Successful in 29s
CI / rust (pull_request) Successful in 2m44s
CI / web (pull_request) Failing after 50m0s

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal!497
No description provided.