layout_motion 0.3.1
layout_motion: ^0.3.1 copied to clipboard
Automatic FLIP layout animations for Flutter. Wrap any Column, Row, Wrap, or Stack to animate add, remove, and reorder with zero configuration.
0.3.1 #
- FIX: Dispose
CurvedAnimationobjects before their parent controllers to prevent listener leaks - FIX: Defer
_entries.remove()in exit status listener to avoid map mutation during iteration - FIX: Replace per-frame
setStatein move animations with scopedAnimatedBuilderrebuilds - Guard status listeners against double-disposal when animations race
- Extract
AnimatedChildEntry.idle()factory to deduplicate entry creation - Update README: add
Stackreferences,moveThreshold/transitionDurationto API table, bump version
0.3.0 #
- FIX: Key validation now throws
ArgumentErrorin release builds (was assert-only) - Add configurable
moveThresholdparameter to control sub-pixel move filtering - Add
transitionDurationparameter for independent enter/exit animation timing - Add
Stacklayout support - Improve
AnimatedChildEntrytest coverage (isAnimating,dispose()) - Add
DiffResult.toString()andChildSnapshot.hashCodecoverage tests
0.2.1 #
- Add scale parameter assertions to
ScaleIn/ScaleOutconstructors - Add clarifying code comments for reversed animation and listener patterns
- Add README badges, migration guide, troubleshooting, and accessibility docs
- Add Row usage example to README
- Add Row layout demo to example app
- Add GitHub Actions CI and docs workflows
- Add RTL (right-to-left) tests
- Add performance tests with large child counts
0.2.0 #
- BREAKING: Rename
ScaleIn.beginScale→ScaleIn.scaleandScaleOut.endScale→ScaleOut.scalefor consistent parameter naming - Extract move-animation threshold to named constant
_moveThresholdwith documentation - Add comprehensive transition tests (FadeIn/Out, SlideIn/Out, ScaleIn/Out, custom transitions)
- Add move animation tests (reorder, interruption, sub-pixel threshold, Row support, combined add/remove+move)
0.1.0 #
- Initial release
MotionLayoutwidget with FLIP animation engine- Supports
Column,Row, andWraplayouts - Key-based diffing with LIS for optimal move detection
- Built-in transitions:
FadeIn/FadeOut,SlideIn/SlideOut,ScaleIn/ScaleOut - Custom transitions via
MotionTransitionbase class - Interruption-safe animations with smooth redirects
enabledflag andDuration.zerofor instant mode