Index: cc/animation/layer_animation_controller.cc |
diff --git a/cc/animation/layer_animation_controller.cc b/cc/animation/layer_animation_controller.cc |
index a213ba7f76bfaa67350b69fb5a7fd41c7049e63f..08ac1d5d797ef7ea2e6d9e36b3a47789dd50a119 100644 |
--- a/cc/animation/layer_animation_controller.cc |
+++ b/cc/animation/layer_animation_controller.cc |
@@ -174,15 +174,21 @@ void LayerAnimationController::AccumulatePropertyUpdates( |
} |
} |
-void LayerAnimationController::UpdateState(AnimationEventsVector* events) { |
+void LayerAnimationController::UpdateState(bool start_ready_animations, |
+ AnimationEventsVector* events) { |
if (!HasActiveObserver()) |
return; |
- PromoteStartedAnimations(last_tick_time_, events); |
+ if (start_ready_animations) |
+ PromoteStartedAnimations(last_tick_time_, events); |
+ |
MarkFinishedAnimations(last_tick_time_); |
MarkAnimationsForDeletion(last_tick_time_, events); |
- StartAnimationsWaitingForTargetAvailability(last_tick_time_); |
- PromoteStartedAnimations(last_tick_time_, events); |
+ |
+ if (start_ready_animations) { |
+ StartAnimationsWaitingForTargetAvailability(last_tick_time_); |
+ PromoteStartedAnimations(last_tick_time_, events); |
+ } |
AccumulatePropertyUpdates(last_tick_time_, events); |