feat(viewer): add optional gapless continuous page display

M3: preserve reading position while joining page edges, with persisted defaults and opt-in UI control. Translate both labels in all 22 catalogs, update attribution, and cover catalog completeness with a regression test. Rebase PR #3101 onto current main while retaining navigation and rendering fixes.
This commit is contained in:
DjPeepjay
2026-10-18 17:27:58 -05:00
parent 4db6ac4ae2
commit 7137c41f47
39 changed files with 357 additions and 92 deletions
+29
View File
@@ -0,0 +1,29 @@
# Continuous page display
> **Last updated:** 2026-10-17 · Viewer: optional page gaps.
To read pages as a continuous strip, open **View → Page display**, choose **Single page**,
turn **Continuous scrolling** on, and turn **Show gaps between pages** off. The Page display
button on the viewer rail opens the same choices. The command palette also offers
**Show gaps between pages** as a toggle.
Hiding gaps joins the displayed page edges and removes page shadows. It does not crop or
change the PDF: white margins already in a page remain. Pages of different widths stay
centered. In two-page view, it removes both the gutter within a row and the gap between rows.
For future documents, open **Preferences → Documents and view** and uncheck
**Show gaps between pages**. This default survives a restart. Existing documents retain their
current view; the per-document toggle does not change the preference for future documents.
Desktop launch options:
```sh
pdfcraft --layout continuous --page-gaps off document.pdf
pdfcraft --default-page-gaps off
```
The opt-in UI control channel accepts `set key=page-gaps value=off` for the active document
and `set key=default-page-gaps value=off` for future documents. Its `command` method accepts
`id=view.page_gaps`, and `state` reports `active.page_gaps` and `active.continuous`.
Revision history: 2026-10-17 — added local gapless-display controls and documentation.