Skip to content

fix: restore safe area after closing reader on iPad#681

Merged
everpcpc merged 3 commits intomainfrom
codex/fix-reader-safe-area-on-ipad-exit
Mar 20, 2026
Merged

fix: restore safe area after closing reader on iPad#681
everpcpc merged 3 commits intomainfrom
codex/fix-reader-safe-area-on-ipad-exit

Conversation

@everpcpc
Copy link
Copy Markdown
Owner

Problem

On iPad, closing the reader after it had hidden the status bar could leave the main interface laid out as if the top safe area were still ignored. The result was content overlapping the status bar after dismissing the full-screen reader.

Approach

Keep status bar ownership at the same layer that owns the full-screen reader presentation. The overlay now reads a lightweight preference emitted by each reader root and uses that local UI state to decide whether the status bar should be hidden.

Scope

  • Move reader status bar handling into ReaderOverlay
  • Add a small preference helper for reader controls visibility
  • Remove per-reader status bar modifiers in DIVINA, EPUB, and PDF readers
  • Bump the build version to 375

Validation

  • Not run locally in this session
  • Recommended manual check on iPad: hide reader controls, dismiss the reader, and confirm the main interface respects the top safe area again

Move reader status bar ownership to ReaderOverlay so fullScreenCover and status bar visibility are controlled at the same layer.

Use a lightweight preference key for reader controls visibility instead of storing chrome state in ReaderPresentationManager or per-reader close hacks.
Make the reader controls visibility preference helper available to all platforms so shared reader roots compile for macOS as well.
@everpcpc everpcpc merged commit bbc610e into main Mar 20, 2026
3 checks passed
@everpcpc everpcpc deleted the codex/fix-reader-safe-area-on-ipad-exit branch March 20, 2026 13:50
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