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

Side by Side Diff: ui/compositor/scoped_layer_animation_settings.cc

Issue 134453004: Use a bitfield to store animatable properties. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix win build error Created 6 years, 11 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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(LayerAnimationElement::TRANSFORM == element->properties())
sky 2014/01/13 14:26:42 DCHECK_EQ
Ian Vollick 2014/01/13 19:03:59 Done.
65 transform_property.insert(LayerAnimationElement::TRANSFORM);
66 DCHECK(transform_property == element->properties())
67 << "Only transform animations are currently invertible."; 65 << "Only transform animations are currently invertible.";
68 66
69 scoped_ptr<LayerAnimationElement> to_return( 67 scoped_ptr<LayerAnimationElement> to_return(
70 LayerAnimationElement::CreateInverseTransformElement(base, element)); 68 LayerAnimationElement::CreateInverseTransformElement(base, element));
71 return to_return.Pass(); 69 return to_return.Pass();
72 } 70 }
73 71
74 Layer* base_layer_; 72 Layer* base_layer_;
75 // child layers 73 // child layers
76 std::vector<Layer*> inverse_layers_; 74 std::vector<Layer*> inverse_layers_;
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 } 152 }
155 inverse_observer_->SetLayer(base); 153 inverse_observer_->SetLayer(base);
156 } 154 }
157 155
158 void ScopedLayerAnimationSettings::AddInverselyAnimatedLayer( 156 void ScopedLayerAnimationSettings::AddInverselyAnimatedLayer(
159 Layer* inverse_layer) { 157 Layer* inverse_layer) {
160 inverse_observer_->AddInverselyAnimatedLayer(inverse_layer); 158 inverse_observer_->AddInverselyAnimatedLayer(inverse_layer);
161 } 159 }
162 160
163 } // namespace ui 161 } // namespace ui
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698