feat(paginator): manual touch scrolling in scrolled layouts — kill the native fling

Scrolled (webtoon) layouts now scroll single-finger drags manually, the
same path paginated layouts always used: the browser's native touch
scrolling — and its fling momentum — is suppressed so the full gesture
stream stays observable to hosts. The reader's chrome UX (bookhoard
handoff item 7) classifies vertical flicks from that stream: flick-down
reveals, down/up dismisses. Side-swipes in paginated layouts and drags
in scrolled ones both page/scroll exactly as before, minus momentum.

Release behavior in scrolled layouts is stop-where-released — no snap,
deliberately: webtoon panels don't align to screen boundaries and a
snap would fight zoomed panning. Long jumps stay the position UI's
job. Pinch zoom, multi-touch, and active touch selection keep their
native behavior via the existing guards (they return before the
preventDefault). Desktop wheel scrolling is untouched.

Version 0.5.4.
This commit is contained in:
John O'Keefe committed 2026-10-15 13:29:30 -04:00
1 parent 7796b05582
commit f622841e29
2 files changed
+13 -3

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "foliate-js",
"version": "0.5.3",
"version": "0.5.4",
"description": "Render e-books in the browser",
"repository": {
"type": "git",