diff options
| -rwxr-xr-x | core/java/android/animation/Animator.java | 1 | ||||
| -rw-r--r-- | core/java/android/animation/Sequencer.java | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/core/java/android/animation/Animator.java b/core/java/android/animation/Animator.java index 71b6d99c9172..717fc0aac03e 100755 --- a/core/java/android/animation/Animator.java +++ b/core/java/android/animation/Animator.java @@ -669,6 +669,7 @@ public class Animator<T> extends Animatable { setCurrentPlayTime(getCurrentPlayTime()); } mPlayingState = STOPPED; + mStartedDelay = false; sPendingAnimations.add(this); if (sAnimationHandler == null) { sAnimationHandler = new AnimationHandler(); diff --git a/core/java/android/animation/Sequencer.java b/core/java/android/animation/Sequencer.java index a9e4e3bbf7dd..63ec94078dd9 100644 --- a/core/java/android/animation/Sequencer.java +++ b/core/java/android/animation/Sequencer.java @@ -233,6 +233,10 @@ public final class Sequencer extends Animatable { @Override public void end() { mCanceled = true; + if (mSortedNodes.size() != mNodes.size()) { + // hasn't been started yet - sort the nodes now, then end them + sortNodes(); + } if (mSortedNodes.size() > 0) { for (Node node : mSortedNodes) { node.animation.end(); |