commit | f1b9b464216d2fac634be9c6aa8605d7c9ed5b68 | [log] [tgz] |
---|---|---|
author | Chet Haase <chet@google.com> | Thu Aug 26 12:05:20 2010 -0700 |
committer | Chet Haase <chet@google.com> | Thu Aug 26 13:59:20 2010 -0700 |
tree | 57f9696aa352dc3fb2593b88840be24c2d3c075e | |
parent | b79c2718577422d278b063f83964881ce4207c94 [diff] |
Fix problems with early ending of Sequencer Change-Id: Ib7548059ee3d3d713b78f86a2d290be4397c167d
diff --git a/core/java/android/animation/Animator.java b/core/java/android/animation/Animator.java index 71b6d99..717fc0a 100755 --- a/core/java/android/animation/Animator.java +++ b/core/java/android/animation/Animator.java
@@ -669,6 +669,7 @@ 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 a9e4e3b..63ec940 100644 --- a/core/java/android/animation/Sequencer.java +++ b/core/java/android/animation/Sequencer.java
@@ -233,6 +233,10 @@ @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();