Index: ui/gfx/compositor/layer_animation_sequence.cc |
diff --git a/ui/gfx/compositor/layer_animation_sequence.cc b/ui/gfx/compositor/layer_animation_sequence.cc |
index b5475ecfa727409c92c9a51e5752133f3faba5a7..fbd7bca9cb0c4689e5e8f3edc4ade41211b787f3 100644 |
--- a/ui/gfx/compositor/layer_animation_sequence.cc |
+++ b/ui/gfx/compositor/layer_animation_sequence.cc |
@@ -16,11 +16,13 @@ namespace ui { |
LayerAnimationSequence::LayerAnimationSequence() |
: is_cyclic_(false), |
+ is_animating_(false), |
last_element_(0) { |
} |
LayerAnimationSequence::LayerAnimationSequence(LayerAnimationElement* element) |
: is_cyclic_(false), |
+ is_animating_(false), |
last_element_(0) { |
AddElement(element); |
} |
@@ -36,6 +38,9 @@ void LayerAnimationSequence::Progress(base::TimeDelta elapsed, |
if (elements_.empty()) |
return; |
+ // We are now animating. |
+ is_animating_ = true; |
+ |
if (is_cyclic_ && duration_ > base::TimeDelta()) { |
// If delta = elapsed - last_start_ is huge, we can skip ahead by complete |
// loops to save time. |
@@ -69,6 +74,7 @@ void LayerAnimationSequence::Progress(base::TimeDelta elapsed, |
if (!is_cyclic_ && elapsed == duration_) { |
last_element_ = 0; |
last_start_ = base::TimeDelta::FromMilliseconds(0); |
+ is_animating_ = false; |
NotifyEnded(); |
} |
} |
@@ -90,6 +96,7 @@ void LayerAnimationSequence::Abort() { |
} |
last_element_ = 0; |
last_start_ = base::TimeDelta::FromMilliseconds(0); |
+ is_animating_ = false; |
NotifyAborted(); |
} |