From a5ffa6bbd671d81ae290c8bbd76c319aaca0bac0 Mon Sep 17 00:00:00 2001 From: Greg Littlefield Date: Fri, 6 Oct 2017 14:28:22 -0700 Subject: [PATCH 1/6] Show/hide-specific configurability of transition counts --- lib/src/component/abstract_transition.dart | 34 +-- .../component/abstract_transition_props.dart | 16 +- .../component/abstract_transition_test.dart | 220 +++++++++++------- 3 files changed, 167 insertions(+), 103 deletions(-) diff --git a/lib/src/component/abstract_transition.dart b/lib/src/component/abstract_transition.dart index 18b791ee7..b85466ba3 100644 --- a/lib/src/component/abstract_transition.dart +++ b/lib/src/component/abstract_transition.dart @@ -106,9 +106,21 @@ abstract class AbstractTransitionComponent true; + /// Whether the Element returned by [getTransitionDomNode] will have a transition event when showing. + bool get hasTransitionIn => hasTransition && transitionInCount > 0; + + /// Whether the Element returned by [getTransitionDomNode] will have a transition event when hiding. + bool get hasTransitionOut => hasTransition && transitionOutCount > 0; + + /// The number of `transitionend` events that occur when the transition node is shown. + int get transitionInCount => props.transitionInCount ?? props.transitionCount; + + /// The number of `transitionend` events that occur when the transition node is hidden. + int get transitionOutCount => props.transitionOutCount ?? props.transitionCount; + /// The duration that can elapse before a transition timeout occurs. Duration get transitionTimeout => const Duration(seconds: 1); @@ -135,7 +147,7 @@ abstract class AbstractTransitionComponent