Skip to content

fix: align divina scroll viewport#646

Merged
everpcpc merged 3 commits intomainfrom
codex/fix-divina-scroll-viewport
Mar 10, 2026
Merged

fix: align divina scroll viewport#646
everpcpc merged 3 commits intomainfrom
codex/fix-divina-scroll-viewport

Conversation

@everpcpc
Copy link
Copy Markdown
Owner

Problem

Issue #643 reports that Divina Scroll mode does not stay aligned to the visible screen bounds. In practice the paging distance drifts in vertical mode and in landscape horizontal scrolling because the page viewport size can differ from the actual scroll container size once the reader extends into ignored safe areas.

Approach

Use the native scroll container's visible bounds as the paging viewport instead of relying on the outer SwiftUI geometry size. On iOS/tvOS the reader now sizes pages from UICollectionView.bounds; on macOS it uses NSScrollView.contentView.bounds so the page size tracks the visible clip view rather than the expanded document view.

Scope

  • fix Divina scroll viewport alignment in the native paged scroll views
  • keep page sizing, offset restoration, and centered-item calculations on the same visible viewport basis
  • bump the build version to 359

Validation

  • make format
  • make build

everpcpc and others added 3 commits March 10, 2026 15:52
Use the native scroll container bounds as the paging viewport in scroll mode.
This keeps page sizing and content offsets aligned when the reader ignores safe areas,
fixing vertical and landscape scroll drift in the Divina reader.
@everpcpc everpcpc merged commit b24c5be into main Mar 10, 2026
3 checks passed
@everpcpc everpcpc deleted the codex/fix-divina-scroll-viewport branch March 10, 2026 07:59
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