[Feature Suggestion] Lock canvas scrolling when "Paginate PDF" is disabled
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 52/100
Research direction
The issue names PageView.kt as the place where the reporter tested changes. Start by reading that file and tracing how the “Paginate PDF” setting controls scrolling and the “Show pagination lines” setting. Done means scrolling stays within one page when pagination is disabled, the dependent setting is handled as requested, and continuous scrolling remains unchanged when pagination is enabled.
Written by the indexing model from the issue text.
Description
Problem:
When "Paginate PDF" is turned off, downward scrolling still continues working indefinitely. Because the canvas is never locked to a single page height, you can scroll down and keep writing further and further down the page.
When exporting with "Paginate PDF" off, Notable does not slice the page into multiple sheets—so the page is exported as a single, unusually tall, non-standard page that exceeds standard A4 proportions and breaks formatting when printed or viewed in document readers.
Proposed Solution: When "Paginate PDF" is disabled:
- Lock Downward Scroll: Lock vertical and horizontal scroll to (0, 0) so the canvas stays strictly at single-page height. You cannot scroll past the bottom bezel into infinite vertical space.
- Settings: Visually nest "Show pagination lines" under the main "Paginate PDF" toggle, disabling it automatically when pagination is turned off.
Results:
-
Single-page notes: Stay strictly bound to a single page, guaranteeing that exported single-page PDFs always match exact standard A4 dimensions.
-
Continuous notes: Multi-page continuous scrolling notebooks remain completely untouched when "Paginate PDF" is enabled.
Tested:
I built and tested this locally on my Note 4C (using AI to help evaluate my code edits and suggest better implementation in PageView.kt). So far, it works seamlessly, makes single-page note-taking feel like a real physical notebook, and makes PDF export dimensions completely predictable.
======================================================
Future Evolution (Ideas for Later)
While a global setting in App Settings works great as minimal settings, down the road this could naturally evolve into Per-Notebook Properties:
- Per-Notebook Overrides: App Settings would define the default for newly created notebooks, but long-pressing a notebook to view its properties could allow overriding pagination for that specific document. (requires adding that settings here)
- Export Warning / Detection: When exporting, if the app detects strokes extending beyond the single-page canvas while pagination is disabled, it could show a helpful warning:
> "This notebook has content beyond the page canvas. It is recommended to enable pagination in Notebook Properties; otherwise, it will export as a continuous canvas.".
- Dominant language
- Kotlin
- Stars
- 269
- Forks
- 44
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 22
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Ethran/notable
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
-
[AI] Line tool saves raw pen pressure (clamped to full pressure)Possibly taken @kal-kaliper claimed this 1 day ago. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
Editor burger menuOpenbug
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 30/100
Maintainers usually reply within 1 day
-
[Feature Suggestion] Independent Zoom Controls: Decouple Zoom-In from Zoom-Out (with 1.0x Snap)Open
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Maintainers usually reply within 1 day
Similar issues
-
area:data-quality importer size:S
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
enorm-labs/event-junkie#5136 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
wangzan101/Mika#644 ·
Maintainers usually reply within 1 day
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
commons-app/apps-android-commons#7341 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
MetrolistGroup/Metrolist#4732 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
sergio-sastre/ComposablePreviewScanner#163 ·
Maintainers usually reply within 1 day