Skip to content

Fix: keep content clear of the notch under Safari page zoom - #579

Merged
SandObserver merged 1 commit into
mainfrom
fix/safe-area-under-page-zoom
Oct 27, 2026
Merged

SandObserver merged 1 commit into
mainfrom
fix/safe-area-under-page-zoom

Conversation

@SandObserver

Copy link
Copy Markdown
Owner

Summary

  • Add ui/js/page-zoom.js, a blocking classic script on both pages. It sets --inset-scale on the root to 1 / visualViewport.scale, read only when the layout width changes, so a pinch does not move the insets.
  • Add --safe-top, --safe-right, --safe-bottom and --safe-left to tokens.css, each env(safe-area-inset-*) times --inset-scale.
  • Use the tokens in place of every env(safe-area-inset-*) in the dashboard, Settings and config recovery stylesheets.

Testing
All green. Checked on an iPhone in Safari at 50% and 100% page zoom: the side insets measured 118 px and 59 px. Added tests for the scale at 50%, 100% and 150%, a pinch, a later zoom change, the load order, and that only the tokens read the insets.

Changelog

Fixed

  • Keep the dashboard and Settings clear of the notch and status bar when Safari's page zoom is not 100%.

Checklist

  • Stays within the project constraints: one container, no runtime dependencies, no build step (see CONTRIBUTING.md).
  • Tests added or updated for new logic, and the full suite, lint, and typechecks pass.
  • Docs updated if behavior or configuration changed.

@SandObserver SandObserver added the bug Something isn't working label Oct 27, 2026
@SandObserver
SandObserver merged commit 10fe868 into main Oct 27, 2026
6 checks passed
@SandObserver
SandObserver deleted the fix/safe-area-under-page-zoom branch October 27, 2026 04:16
stackyard-release Bot pushed a commit that referenced this pull request Oct 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant