| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/compositor/scoped_layer_animation_settings.h" | 5 #include "ui/compositor/scoped_layer_animation_settings.h" |
| 6 | 6 |
| 7 #include "ui/compositor/layer.h" | 7 #include "ui/compositor/layer.h" |
| 8 #include "ui/compositor/layer_animation_observer.h" | 8 #include "ui/compositor/layer_animation_observer.h" |
| 9 #include "ui/compositor/layer_animation_sequence.h" | 9 #include "ui/compositor/layer_animation_sequence.h" |
| 10 #include "ui/compositor/layer_animator.h" | 10 #include "ui/compositor/layer_animator.h" |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 } | 54 } |
| 55 private: | 55 private: |
| 56 scoped_ptr<LayerAnimationElement> GetInverseElement( | 56 scoped_ptr<LayerAnimationElement> GetInverseElement( |
| 57 LayerAnimationSequence* sequence, | 57 LayerAnimationSequence* sequence, |
| 58 gfx::Transform base) const { | 58 gfx::Transform base) const { |
| 59 const size_t expected_size = 1; | 59 const size_t expected_size = 1; |
| 60 DCHECK_EQ(expected_size, sequence->size()) << | 60 DCHECK_EQ(expected_size, sequence->size()) << |
| 61 "Inverse supported only for single element sequences."; | 61 "Inverse supported only for single element sequences."; |
| 62 | 62 |
| 63 LayerAnimationElement* element = sequence->FirstElement(); | 63 LayerAnimationElement* element = sequence->FirstElement(); |
| 64 LayerAnimationElement::AnimatableProperties transform_property; | 64 DCHECK_EQ(static_cast<LayerAnimationElement::AnimatableProperties>( |
| 65 transform_property.insert(LayerAnimationElement::TRANSFORM); | 65 LayerAnimationElement::TRANSFORM), |
| 66 DCHECK(transform_property == element->properties()) | 66 element->properties()) |
| 67 << "Only transform animations are currently invertible."; | 67 << "Only transform animations are currently invertible."; |
| 68 | 68 |
| 69 scoped_ptr<LayerAnimationElement> to_return( | 69 scoped_ptr<LayerAnimationElement> to_return( |
| 70 LayerAnimationElement::CreateInverseTransformElement(base, element)); | 70 LayerAnimationElement::CreateInverseTransformElement(base, element)); |
| 71 return to_return.Pass(); | 71 return to_return.Pass(); |
| 72 } | 72 } |
| 73 | 73 |
| 74 Layer* base_layer_; | 74 Layer* base_layer_; |
| 75 // child layers | 75 // child layers |
| 76 std::vector<Layer*> inverse_layers_; | 76 std::vector<Layer*> inverse_layers_; |
| 77 }; | 77 }; |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 } | 154 } |
| 155 inverse_observer_->SetLayer(base); | 155 inverse_observer_->SetLayer(base); |
| 156 } | 156 } |
| 157 | 157 |
| 158 void ScopedLayerAnimationSettings::AddInverselyAnimatedLayer( | 158 void ScopedLayerAnimationSettings::AddInverselyAnimatedLayer( |
| 159 Layer* inverse_layer) { | 159 Layer* inverse_layer) { |
| 160 inverse_observer_->AddInverselyAnimatedLayer(inverse_layer); | 160 inverse_observer_->AddInverselyAnimatedLayer(inverse_layer); |
| 161 } | 161 } |
| 162 | 162 |
| 163 } // namespace ui | 163 } // namespace ui |
| OLD | NEW |