flutter_animate icon indicating copy to clipboard operation
flutter_animate copied to clipboard

Allow for declarative tween defaults using an `InheritedWidget`

Open esDotDev opened this issue 2 years ago • 0 comments

In some cases you want a group of tweens to share some default duration, curve, or delay. It might be nice if this could be declared in the widget tree:

return AnimateDefaults(
  duration: 1.seconds,
  delay: .5.seconds,
  curve: Curves.easeInOut,
  child: Column(
     children: [
        childA.animate().fadeIn();
        childB.animate().fadeIn().scale(...);
        childC.animate().fadeIn().slide(...);
    ]
  )
);

These would simply act as new defaults, nothing more fancy than that.

This could be accomplished by with class AnimateDefaults extends InheritedWidget, and then calling AnimateDefaults.maybeOf(context) from within Animate to look up the closest ancestor with default overrides (if any).

esDotDev avatar Feb 25 '23 21:02 esDotDev