diff options
Diffstat (limited to 'chromium/ui/compositor/layer_animation_observer.cc')
-rw-r--r-- | chromium/ui/compositor/layer_animation_observer.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/chromium/ui/compositor/layer_animation_observer.cc b/chromium/ui/compositor/layer_animation_observer.cc index 88db4c65ec2..658a835ddfa 100644 --- a/chromium/ui/compositor/layer_animation_observer.cc +++ b/chromium/ui/compositor/layer_animation_observer.cc @@ -140,11 +140,16 @@ void ImplicitAnimationObserver::CheckCompleted() { void ImplicitAnimationObserver::UpdatePropertyAnimationStatus( LayerAnimationSequence* sequence, AnimationStatus status) { - const LayerAnimationElement::AnimatableProperties& properties = + LayerAnimationElement::AnimatableProperties properties = sequence->properties(); - for (LayerAnimationElement::AnimatableProperties::const_iterator i = - properties.begin(); i != properties.end(); ++i) { - property_animation_status_[(*i)] = status; + for (unsigned i = LayerAnimationElement::FIRST_PROPERTY; + i != LayerAnimationElement::SENTINEL; + i = i << 1) { + if (i & properties) { + LayerAnimationElement::AnimatableProperty property = + static_cast<LayerAnimationElement::AnimatableProperty>(i); + property_animation_status_[property] = status; + } } } |