Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Unified Diff: cc/animation/layer_animation_controller.cc

Issue 723343002: Update from https://crrev.com/304121 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/animation/keyframed_animation_curve.cc ('k') | cc/animation/layer_animation_controller_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/animation/layer_animation_controller.cc
diff --git a/cc/animation/layer_animation_controller.cc b/cc/animation/layer_animation_controller.cc
index b779a37957a8d165d517e611f0ee37da334bc963..f621ad318c4d5470442b842be7fee9ab4eee0333 100644
--- a/cc/animation/layer_animation_controller.cc
+++ b/cc/animation/layer_animation_controller.cc
@@ -148,7 +148,8 @@ void LayerAnimationController::AccumulatePropertyUpdates(
if (!animation->InEffect(monotonic_time))
continue;
- double trimmed = animation->TrimTimeToCurrentIteration(monotonic_time);
+ double trimmed =
+ animation->TrimTimeToCurrentIteration(monotonic_time).InSecondsF();
switch (animation->target_property()) {
case Animation::Opacity: {
AnimationEvent event(AnimationEvent::PropertyUpdate,
@@ -212,7 +213,11 @@ void LayerAnimationController::UpdateState(bool start_ready_animations,
if (!HasActiveValueObserver())
return;
- DCHECK(last_tick_time_ != base::TimeTicks());
+ // Animate hasn't been called, this happens if an observer has been added
+ // between the Commit and Draw phases.
+ if (last_tick_time_ == base::TimeTicks())
+ return;
+
if (start_ready_animations)
PromoteStartedAnimations(last_tick_time_, events);
@@ -856,8 +861,9 @@ void LayerAnimationController::TickAnimations(base::TimeTicks monotonic_time) {
if (!animations_[i]->InEffect(monotonic_time))
continue;
- double trimmed =
- animations_[i]->TrimTimeToCurrentIteration(monotonic_time);
+ double trimmed = animations_[i]
+ ->TrimTimeToCurrentIteration(monotonic_time)
+ .InSecondsF();
switch (animations_[i]->target_property()) {
case Animation::Transform: {
« no previous file with comments | « cc/animation/keyframed_animation_curve.cc ('k') | cc/animation/layer_animation_controller_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698