flutter_animate_plus 5.1.0
flutter_animate_plus: ^5.1.0 copied to clipboard
A maintained fork of flutter_animate with beautiful animated effects and builders for Flutter.
Changelog #
All notable changes to this project will be documented in this file.
5.1.0 - 2026-09-10 #
Fixed #
- Deliver time-zero callbacks on zero-total-duration timelines, including the optional first-frame rendering mode, while preserving deferred playback and callback ordering.
- Cancel delayed playback when an animation is removed; detach callbacks from caller-owned controllers.
- Safely switch between internal and external controllers.
- Apply updated subtree defaults before simultaneous target playback; preserve progress for scope-only updates.
- Dispose the initially hidden entry/exit recipe safely before it is shown.
- Release callback, listen and toggle effect subscriptions; avoid retaining
CurvedAnimationstatus listeners. - Keep toggle builders responsive to inherited changes such as theme and viewport size while filtering unchanged animation values.
- Keep zero-duration effects finite and deliver
onPlaybefore synchronousonComplete. - Honor documented delay behavior for initial target/value and respond to
autoPlayupdates. - Handle zero scroll ranges, explicit zero origins and overscroll without NaN progress; preserve progress while unbounded ranges cannot resolve.
- Remove misleading warnings for valid state-driven
autoPlay: falseconfigurations. - Dispose adapter tickers and use scheduler elapsed time for animated adapters.
- Use Flutter's native finite repeat support so
loopfutures complete without wall-clock timers.
Added #
AnimatePresencewith cancellable entry/exit delays, exit retention, customizable transitions, input/semantics/focus exclusion and reduced-motion handling.SpringAdapterfor bounded Flutter spring playback, target updates preserving position and velocity, and lifecycle-safe cancellation.- About in the example with portfolio, Ko-fi, package/source links and upstream attribution; Cloudflare Pages configuration and deployment guide.
ImplicitAnimate/animateImplicitly()for independent endpoint updates in exactly Fade, Scale, Slide and Move effects, including interruption, cancellable delays and reduced motion.AnimateInitCallback: anonInitbool result overrides initial autoplay; existing void callbacks remain accepted, and non-bool or async results do not change autoplay.- Opt-in
preRenderZeroDurationfor eligible automatic zero-total-duration timelines, retaining asynchronous playback and callbacks. RepeatAdapterwith cancellable initial delay, idle pauses, finite counts and optional alternating directions; existingEffect.delayremains part of the active timeline.SliverFadeEffect/sliverFadeandSliverMoveEffect/sliverMovefor whole sliver sections, plus an executable list/grid recipe with replay and reduced-motion support.- Optional inherited
reverseCurvewith lifecycle-safe subscriptions and Flutter-compatible direction changes. - Absolute and fractional layout-size effects (
size,width,heightand percentage variants). AnimateDefaultsfor subtree duration, effect delay and curves.ValueNotifierAdapter.transformer,AnimationAdapterandScrollAdapter.getPosition.- 24 named directional fade/slide/flip/zoom/bounce presets and 25 declarative equivalents of existing shorthand variants.
- Executable recipes for retained entry/exit with separate delays, native switcher integration, spring playback, implicit endpoint transitions and idle gaps between shimmer sweeps.
- Searchable effect catalog, copyable examples, real pause/resume, reduced-motion previews and a once-visible lazy-list integration in the example.
- Optional
filterQualityon every scale variant for rendering control. @widgetFactoryannotation for better Flutter Inspector attribution.- Regression tests, complete open upstream issue audit and minimum/current SDK CI.
- Refreshed responsive example, replay controls, actual screenshots and reproducible animated GIF capture.
Compatibility #
- Bool values previously returned by
onInitand ignored now decide initial autoplay. Initialization-only callbacks with incidental bool returns should use a block without returning that value; ordinary void callbacks remain accepted. - Retains Flutter >=3.41.4 and Dart ^3.11.1, existing effect defaults and both import paths.
autoPlaychanges now start/stop automatic playback;loop(count: ...)completes its future when finished.- The original Animate timeline does not acquire implicit endpoint semantics. The new implicit API rejects unsupported effects and reverseCurve explicitly.
- Platform-specific visual reports remain documented in
doc/issue-audit.md.
5.0.0 - 2026-03-15 #
Changed #
- renamed the package to
flutter_animate_plus - raised the minimum supported SDK to Dart
^3.11.1and Flutter>=3.41.4 - refreshed package metadata, CI, and the example app scaffolding for current Flutter tooling
- updated to
flutter_lints^6.0.0andflutter_shaders^0.1.3 - cleaned up deprecated APIs for current Flutter stable
4.5.0 - 2024-01-31 #
Changed #
- include
ShaderEffectin export by default - use
AnimatedSamplerfromflutter_shaderspackage (versus copying it in)
4.3.0 - 2023-09-21 #
Added #
AlignEffect- animate alignmenttransformHitTestsonScaleEffectandRotateEffectEffectList- build lists of effects with the chained API
Changed #
- fix to properly support
FollowPathEffect.rotate - made extension method types less ambiguous
- fixed total animation duration when using
ThenEffect - updated to use super initializers
- other minor fixes / doc updates
4.2.0 - 2023-06-19 #
4.1.0 - 2023-02-13 #
4.0.0 - 2023-02-13 #
Added #
CrossfadeEffect- cross fades in a new widgetAdapter.direction- optionally update in only one direction
Changed #
- major refactor of
Adapter - fix issue with adapters generating errors on disposed
Animateinstances - improve smoothing for
Adapter.animated - improve adapter examples
- changed
ThenEffectfunctionality to establish a new baseline time - cleaned up tests & added tests for new effects
3.1.0 - 2023-01-30 #
3.0.0 - 2023-01-19 #
Changed #
- reorganize
libfolder to follow dart guidance - cleanup of documentation to improve consistency
- renamed
test_viewtoplayground_view
2.2.0 - 2023-01-15 #
2.1.0 - 2022-12-24 #
Added #
Animate.targetfor declarative animationBoxShadowEffect- animateBoxShadowElevationEffect- animate elevation shadowsAnimate.restartOnHotReloadstatic property
Changed #
- fixed issues with low value blurs on web
- fixed errors with 0 sized gradients in ShimmerEffect
- removed optimizations that modify the display list
2.0.0 - 2022-10-23 #
Added #
- effects now use "smart" parameters. See README: Other Effect Parameters
- effects now expose default param values as static fields
FlipEffect(2.5d card flip)loopextension toAnimationController- support for non-uniform blurs in
BlurEffect animatedproperty for all adapterstransformHitTestparam onMoveEffect- first set of automated tests
Changed #
- changes to some effect extension methods (ex.
move) to be more consistent - fix for
BlurEffecton the web with low sigma values - exposed some effects' utility methods as static methods
- changed
SwapEffect.buildermethod signature to have a non-nullable child - minor documentation improvements and small fixes
Removed #
unblurextension method. UseblurXYwith abeginvalue instead
1.0.0 - 2022-08-18 #
0.3.0 - 2022-06-20 #
0.2.0 - 2022-06-17 #
Added #
- Adapters: Drive animations from external sources (scrolling, notifiers, etc)
ShakeEffect: translation and/or rotation based shaking effectSaturateEffect: Color saturation effect (ex. animate to grayscale)TintEffect: Animated color tint
Changed #
- Fix issue with
Animatedelay returning after dispose - Improved example
0.1.0 - 2022-05-29 #
Added #
ShimmerEffect: can do a variety of gradient effects, including load shimmersThenEffect: simplifies sequencing effects by calculating a new inheritable delay
Changed #
onInit&onCompleteare now propagated to all children ofAnimateList- improved documentation
Animatedelay is now separate from the animation and only runs once- Effect is now an empty effect instead of an abstract class
- Updated example
- Fixed an issue with property inheritance through multiple effects