summaryrefslogtreecommitdiffstats
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/animation/ValueAnimator.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/animation/ValueAnimator.java b/core/java/android/animation/ValueAnimator.java
index 9435dfb..0d17d67 100644
--- a/core/java/android/animation/ValueAnimator.java
+++ b/core/java/android/animation/ValueAnimator.java
@@ -508,10 +508,14 @@ public class ValueAnimator extends Animator {
duration);
}
mUnscaledDuration = duration;
- mDuration = (long)(duration * sDurationScale);
+ updateScaledDuration();
return this;
}
+ private void updateScaledDuration() {
+ mDuration = (long)(mUnscaledDuration * sDurationScale);
+ }
+
/**
* Gets the length of the animation. The default duration is 300 milliseconds.
*
@@ -947,6 +951,7 @@ public class ValueAnimator extends Animator {
mStarted = true;
mStartedDelay = false;
mPaused = false;
+ updateScaledDuration(); // in case the scale factor has changed since creation time
AnimationHandler animationHandler = getOrCreateAnimationHandler();
animationHandler.mPendingAnimations.add(this);
if (mStartDelay == 0) {