Skip to content

feat(mobile): add smooth reading animation and scroll inertia - #711

Merged
codedogQBY merged 1 commit into
codedogQBY:mainfrom
andyWang1688:feat/smooth-reading
Aug 22, 2026
Merged

codedogQBY merged 1 commit into
codedogQBY:mainfrom
andyWang1688:feat/smooth-reading

Conversation

@andyWang1688

Copy link
Copy Markdown

Summary

  • Add an opt-in Smooth Reading setting, disabled by default to preserve the current performance-first behavior.
  • Re-enable foliate-js animated transitions when the setting is enabled.
  • Add scroll-mode finger-release inertia behind a dedicated scroll-inertia renderer attribute.
  • Cancel inertia on a new touch, touch cancel, navigation lock, programmatic navigation, mode change, document hide, setting disable, and renderer destroy.
  • Regenerate the mobile reader.html bundle.

Validation

  • node --check packages/foliate-js/paginator.js
  • node --check packages/app-expo/scripts/build-reader.js
  • Rebuilt packages/app-expo/assets/reader/reader.html
  • Parsed all generated reader scripts successfully.
  • Browser-level local touch fixture: with inertia enabled, a fast drag continued from 293 to 1240 after release; after disabling the attribute, position remained unchanged after release.

Addresses #581

@codedogQBY

Copy link
Copy Markdown
Owner

Verified on a real device. Smooth reading animation and scroll inertia both work as expected. Thanks!

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.

2 participants