OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "cc/layers/layer.h" | 5 #include "cc/layers/layer.h" |
6 | 6 |
7 #include "cc/animation/keyframed_animation_curve.h" | 7 #include "cc/animation/keyframed_animation_curve.h" |
8 #include "cc/base/math_util.h" | 8 #include "cc/base/math_util.h" |
9 #include "cc/layers/layer_impl.h" | 9 #include "cc/layers/layer_impl.h" |
10 #include "cc/resources/layer_painter.h" | 10 #include "cc/resources/layer_painter.h" |
(...skipping 720 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
731 | 731 |
732 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 732 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
733 test_layer->PushPropertiesTo(impl_layer.get()); | 733 test_layer->PushPropertiesTo(impl_layer.get()); |
734 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); | 734 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); |
735 | 735 |
736 impl_layer->ResetAllChangeTrackingForSubtree(); | 736 impl_layer->ResetAllChangeTrackingForSubtree(); |
737 AddAnimatedTransformToController(impl_layer->layer_animation_controller(), | 737 AddAnimatedTransformToController(impl_layer->layer_animation_controller(), |
738 1.0, | 738 1.0, |
739 0, | 739 0, |
740 100); | 740 100); |
741 impl_layer->layer_animation_controller() | 741 impl_layer->layer_animation_controller()->GetAnimation(Animation::Transform)-> |
742 ->GetAnimation(Animation::TRANSFORM) | 742 set_is_impl_only(true); |
743 ->set_is_impl_only(true); | |
744 transform.Rotate(45.0); | 743 transform.Rotate(45.0); |
745 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetTransform(transform)); | 744 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetTransform(transform)); |
746 | 745 |
747 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 746 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
748 test_layer->PushPropertiesTo(impl_layer.get()); | 747 test_layer->PushPropertiesTo(impl_layer.get()); |
749 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 748 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
750 } | 749 } |
751 | 750 |
752 TEST_F(LayerTest, | 751 TEST_F(LayerTest, |
753 PushPropsDoesntCauseLayerPropertyChangedDuringImplOnlyOpacityAnim) { | 752 PushPropsDoesntCauseLayerPropertyChangedDuringImplOnlyOpacityAnim) { |
(...skipping 19 matching lines...) Expand all Loading... |
773 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 772 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
774 test_layer->PushPropertiesTo(impl_layer.get()); | 773 test_layer->PushPropertiesTo(impl_layer.get()); |
775 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); | 774 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); |
776 | 775 |
777 impl_layer->ResetAllChangeTrackingForSubtree(); | 776 impl_layer->ResetAllChangeTrackingForSubtree(); |
778 AddOpacityTransitionToController(impl_layer->layer_animation_controller(), | 777 AddOpacityTransitionToController(impl_layer->layer_animation_controller(), |
779 1.0, | 778 1.0, |
780 0.3f, | 779 0.3f, |
781 0.7f, | 780 0.7f, |
782 false); | 781 false); |
783 impl_layer->layer_animation_controller() | 782 impl_layer->layer_animation_controller()->GetAnimation(Animation::Opacity)-> |
784 ->GetAnimation(Animation::OPACITY) | 783 set_is_impl_only(true); |
785 ->set_is_impl_only(true); | |
786 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetOpacity(0.75f)); | 784 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetOpacity(0.75f)); |
787 | 785 |
788 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 786 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
789 test_layer->PushPropertiesTo(impl_layer.get()); | 787 test_layer->PushPropertiesTo(impl_layer.get()); |
790 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 788 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
791 } | 789 } |
792 | 790 |
793 TEST_F(LayerTest, | 791 TEST_F(LayerTest, |
794 PushPropsDoesntCauseLayerPropertyChangedDuringImplOnlyFilterAnim) { | 792 PushPropsDoesntCauseLayerPropertyChangedDuringImplOnlyFilterAnim) { |
795 scoped_refptr<Layer> test_layer = Layer::Create(); | 793 scoped_refptr<Layer> test_layer = Layer::Create(); |
(...skipping 14 matching lines...) Expand all Loading... |
810 filters.Append(FilterOperation::CreateBlurFilter(2.f)); | 808 filters.Append(FilterOperation::CreateBlurFilter(2.f)); |
811 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetFilters(filters)); | 809 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetFilters(filters)); |
812 | 810 |
813 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 811 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
814 test_layer->PushPropertiesTo(impl_layer.get()); | 812 test_layer->PushPropertiesTo(impl_layer.get()); |
815 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); | 813 EXPECT_TRUE(impl_layer->LayerPropertyChanged()); |
816 | 814 |
817 impl_layer->ResetAllChangeTrackingForSubtree(); | 815 impl_layer->ResetAllChangeTrackingForSubtree(); |
818 AddAnimatedFilterToController( | 816 AddAnimatedFilterToController( |
819 impl_layer->layer_animation_controller(), 1.0, 1.f, 2.f); | 817 impl_layer->layer_animation_controller(), 1.0, 1.f, 2.f); |
820 impl_layer->layer_animation_controller() | 818 impl_layer->layer_animation_controller()->GetAnimation(Animation::Filter)-> |
821 ->GetAnimation(Animation::FILTER) | 819 set_is_impl_only(true); |
822 ->set_is_impl_only(true); | |
823 filters.Append(FilterOperation::CreateSepiaFilter(0.5f)); | 820 filters.Append(FilterOperation::CreateSepiaFilter(0.5f)); |
824 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetFilters(filters)); | 821 EXPECT_SET_NEEDS_COMMIT(1, test_layer->SetFilters(filters)); |
825 | 822 |
826 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 823 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
827 test_layer->PushPropertiesTo(impl_layer.get()); | 824 test_layer->PushPropertiesTo(impl_layer.get()); |
828 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); | 825 EXPECT_FALSE(impl_layer->LayerPropertyChanged()); |
829 } | 826 } |
830 | 827 |
831 TEST_F(LayerTest, MaskAndReplicaHasParent) { | 828 TEST_F(LayerTest, MaskAndReplicaHasParent) { |
832 scoped_refptr<Layer> parent = Layer::Create(); | 829 scoped_refptr<Layer> parent = Layer::Create(); |
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1144 layer_tree_host->SetRootLayer(root); | 1141 layer_tree_host->SetRootLayer(root); |
1145 } | 1142 } |
1146 | 1143 |
1147 static bool AddTestAnimation(Layer* layer) { | 1144 static bool AddTestAnimation(Layer* layer) { |
1148 scoped_ptr<KeyframedFloatAnimationCurve> curve = | 1145 scoped_ptr<KeyframedFloatAnimationCurve> curve = |
1149 KeyframedFloatAnimationCurve::Create(); | 1146 KeyframedFloatAnimationCurve::Create(); |
1150 curve->AddKeyframe(FloatKeyframe::Create(base::TimeDelta(), 0.3f, nullptr)); | 1147 curve->AddKeyframe(FloatKeyframe::Create(base::TimeDelta(), 0.3f, nullptr)); |
1151 curve->AddKeyframe( | 1148 curve->AddKeyframe( |
1152 FloatKeyframe::Create(base::TimeDelta::FromSecondsD(1.0), 0.7f, nullptr)); | 1149 FloatKeyframe::Create(base::TimeDelta::FromSecondsD(1.0), 0.7f, nullptr)); |
1153 scoped_ptr<Animation> animation = | 1150 scoped_ptr<Animation> animation = |
1154 Animation::Create(curve.Pass(), 0, 0, Animation::OPACITY); | 1151 Animation::Create(curve.Pass(), 0, 0, Animation::Opacity); |
1155 | 1152 |
1156 return layer->AddAnimation(animation.Pass()); | 1153 return layer->AddAnimation(animation.Pass()); |
1157 } | 1154 } |
1158 | 1155 |
1159 TEST(LayerLayerTreeHostTest, ShouldNotAddAnimationWithoutAnimationRegistrar) { | 1156 TEST(LayerLayerTreeHostTest, ShouldNotAddAnimationWithoutAnimationRegistrar) { |
1160 scoped_refptr<Layer> layer = Layer::Create(); | 1157 scoped_refptr<Layer> layer = Layer::Create(); |
1161 | 1158 |
1162 // Case 1: without a LayerTreeHost and without an AnimationRegistrar, the | 1159 // Case 1: without a LayerTreeHost and without an AnimationRegistrar, the |
1163 // animation should not be accepted. | 1160 // animation should not be accepted. |
1164 EXPECT_FALSE(AddTestAnimation(layer.get())); | 1161 EXPECT_FALSE(AddTestAnimation(layer.get())); |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1252 root_layer->AddChild(becomes_not_draws_content); | 1249 root_layer->AddChild(becomes_not_draws_content); |
1253 EXPECT_EQ(0, root_layer->NumDescendantsThatDrawContent()); | 1250 EXPECT_EQ(0, root_layer->NumDescendantsThatDrawContent()); |
1254 | 1251 |
1255 becomes_draws_content->SetIsDrawable(true); | 1252 becomes_draws_content->SetIsDrawable(true); |
1256 root_layer->AddChild(becomes_draws_content); | 1253 root_layer->AddChild(becomes_draws_content); |
1257 EXPECT_EQ(1, root_layer->NumDescendantsThatDrawContent()); | 1254 EXPECT_EQ(1, root_layer->NumDescendantsThatDrawContent()); |
1258 } | 1255 } |
1259 | 1256 |
1260 } // namespace | 1257 } // namespace |
1261 } // namespace cc | 1258 } // namespace cc |
OLD | NEW |