turnable_page 1.0.1
turnable_page: ^1.0.1 copied to clipboard
Realistic page-flipping widget for Flutter with smooth animations, interactive content, and smart gesture detection.
Changelog #
All notable changes to this project will be documented in this file.
1.0.1 - 2025-09-30 #
β¨ New Features #
- FlipSettings Controls: Added
hideLeftShadow
to individually disable the left page shadow in single-page mode. - Vertical Flip Mode: Introduced
onlyVerticalPageFlip
to support vertical-only page flipping by clamping gestures to the bottom edge.
π Bug Fixes #
- Page Navigation: Fixed
nextPage
/previousPage
not working after the first page by resetting navigation state with a fresh key and animation timing. - Animation Lifecycle: Ensured flip animations restart correctly by initializing
startedAt
whenever a new flip begins.
π Enhancements #
- Example App UX: Revamped the example to load pages asynchronously, show a loading indicator, and expose floating navigation buttons once data arrives.
π§Ή Chores #
- Tooling: Added
.fvmrc
to pin the Flutter version used for development.
1.0.0 - 2025-08-17 #
π MAJOR ARCHITECTURE OVERHAUL #
BREAKING CHANGES:
- Complete migration from CustomPainter to Flutter RenderBox system
- Replaced image-based page rendering with live widget rendering
- Implemented direct child widget interaction without conversion overhead
β¨ New Features #
- Smart Gesture Detection: Automatic differentiation between drag (page flip) and tap (widget interaction)
- TurnablePdf Widget: Builtβin PDF page flip viewer (asset / network / file) with single & double page modes, shimmer loading, custom loading/error builders, spine effect, and interactive page rendering
- Interactive Widgets: Buttons and other widgets within pages now work natively without any conversion
- Enhanced Physics: Added inertia, easing, and realistic page bending animations
- Improved Performance: Eliminated expensive widget-to-image conversion pipeline
- Better Hit Testing: Intelligent detection of interactive widgets vs page flip areas
ποΈ Technical Improvements #
- RenderTurnableBook: Custom RenderBox with proper Flutter integration
- Frame Scheduling: Integrated with SchedulerBinding for smooth animations
- Gesture System: Complete rewrite of pointer event handling
- Memory Optimization: Direct widget rendering with cached clipping paths
- Error Handling: Fixed "Build scheduled during frame" issues
π¨ Enhanced Visual Effects #
- Native Shadow System: Using Flutter's painting system for realistic shadows
- Clipping Optimization: Cached path generation for complex page shapes
- Animation Quality: Improved frame-based animation with configurable physics
π Developer Experience #
- Cleaner API: Simplified configuration with automatic behavior
- Better Documentation: Comprehensive Arabic examples and guides
- Edge Case Handling: Improved stability and error recovery
- Configuration Options: Extensive customization for gesture detection and animation
ποΈ Removed #
- Custom canvas interaction handlers
- Image conversion utilities
- Complex painter systems
- Manual widget tree management
0.0.1+1 - 2025-08-09 #
- Docs: Update README to use GitHub-hosted GIFs that render on pub.dev
- Chore: Add
.pubignore
to exclude largevideos/
from published package - Docs: Minor copy updates
0.0.1 - 2025-08-09 #
- Initial release of Turnable Page package.
- Core page-