| 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/trees/layer_tree_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 979 scoped_refptr<Layer> child_; | 979 scoped_refptr<Layer> child_; |
| 980 }; | 980 }; |
| 981 | 981 |
| 982 SINGLE_THREAD_TEST_F(LayerTreeHostTestPropertyTreesChangedSync); | 982 SINGLE_THREAD_TEST_F(LayerTreeHostTestPropertyTreesChangedSync); |
| 983 | 983 |
| 984 class LayerTreeHostTestEffectTreeSync : public LayerTreeHostTest { | 984 class LayerTreeHostTestEffectTreeSync : public LayerTreeHostTest { |
| 985 protected: | 985 protected: |
| 986 void SetupTree() override { | 986 void SetupTree() override { |
| 987 root_ = Layer::Create(); | 987 root_ = Layer::Create(); |
| 988 layer_tree_host()->SetRootLayer(root_); | 988 layer_tree_host()->SetRootLayer(root_); |
| 989 blur_filter_.Append(FilterOperation::CreateBlurFilter(0.5f)); |
| 990 brightness_filter_.Append(FilterOperation::CreateBrightnessFilter(0.25f)); |
| 991 sepia_filter_.Append(FilterOperation::CreateSepiaFilter(0.75f)); |
| 989 LayerTreeHostTest::SetupTree(); | 992 LayerTreeHostTest::SetupTree(); |
| 990 } | 993 } |
| 991 | 994 |
| 992 void BeginTest() override { PostSetNeedsCommitToMainThread(); } | 995 void BeginTest() override { PostSetNeedsCommitToMainThread(); } |
| 993 | 996 |
| 994 void DidCommit() override { | 997 void DidCommit() override { |
| 995 EffectTree& effect_tree = layer_tree_host()->property_trees()->effect_tree; | 998 EffectTree& effect_tree = layer_tree_host()->property_trees()->effect_tree; |
| 996 EffectNode* node = effect_tree.Node(root_->effect_tree_index()); | 999 EffectNode* node = effect_tree.Node(root_->effect_tree_index()); |
| 997 switch (layer_tree_host()->source_frame_number()) { | 1000 switch (layer_tree_host()->source_frame_number()) { |
| 998 case 1: | 1001 case 1: |
| 999 node->opacity = 0.5f; | 1002 node->opacity = 0.5f; |
| 1000 node->is_currently_animating_opacity = true; | 1003 node->is_currently_animating_opacity = true; |
| 1001 break; | 1004 break; |
| 1002 case 2: | 1005 case 2: |
| 1003 node->is_currently_animating_opacity = true; | 1006 node->is_currently_animating_opacity = true; |
| 1004 break; | 1007 break; |
| 1005 case 3: | 1008 case 3: |
| 1006 node->is_currently_animating_opacity = false; | 1009 node->is_currently_animating_opacity = false; |
| 1007 break; | 1010 break; |
| 1008 case 4: | 1011 case 4: |
| 1009 node->opacity = 0.25f; | 1012 node->opacity = 0.25f; |
| 1010 node->is_currently_animating_opacity = true; | 1013 node->is_currently_animating_opacity = true; |
| 1014 break; |
| 1015 case 5: |
| 1016 node->filters = blur_filter_; |
| 1017 node->is_currently_animating_filter = true; |
| 1018 break; |
| 1019 case 6: |
| 1020 node->is_currently_animating_filter = true; |
| 1021 break; |
| 1022 case 7: |
| 1023 node->is_currently_animating_filter = false; |
| 1024 break; |
| 1025 case 8: |
| 1026 node->filters = sepia_filter_; |
| 1027 node->is_currently_animating_filter = true; |
| 1028 break; |
| 1011 } | 1029 } |
| 1012 } | 1030 } |
| 1013 | 1031 |
| 1014 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 1032 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
| 1015 EffectTree& effect_tree = impl->sync_tree()->property_trees()->effect_tree; | 1033 EffectTree& effect_tree = impl->sync_tree()->property_trees()->effect_tree; |
| 1016 EffectNode* node = effect_tree.Node( | 1034 EffectNode* node = effect_tree.Node( |
| 1017 impl->sync_tree()->root_layer_for_testing()->effect_tree_index()); | 1035 impl->sync_tree()->root_layer_for_testing()->effect_tree_index()); |
| 1018 switch (impl->sync_tree()->source_frame_number()) { | 1036 switch (impl->sync_tree()->source_frame_number()) { |
| 1019 case 0: | 1037 case 0: |
| 1020 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); | 1038 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); |
| 1021 PostSetNeedsCommitToMainThread(); | 1039 PostSetNeedsCommitToMainThread(); |
| 1022 break; | 1040 break; |
| 1023 case 1: | 1041 case 1: |
| 1024 EXPECT_EQ(node->opacity, 0.75f); | 1042 EXPECT_EQ(node->opacity, 0.75f); |
| 1025 PostSetNeedsCommitToMainThread(); | 1043 PostSetNeedsCommitToMainThread(); |
| 1026 break; | 1044 break; |
| 1027 case 2: | 1045 case 2: |
| 1028 EXPECT_EQ(node->opacity, 0.75f); | 1046 EXPECT_EQ(node->opacity, 0.75f); |
| 1029 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); | 1047 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); |
| 1030 PostSetNeedsCommitToMainThread(); | 1048 PostSetNeedsCommitToMainThread(); |
| 1031 break; | 1049 break; |
| 1032 case 3: | 1050 case 3: |
| 1033 EXPECT_EQ(node->opacity, 0.5f); | 1051 EXPECT_EQ(node->opacity, 0.5f); |
| 1034 PostSetNeedsCommitToMainThread(); | 1052 PostSetNeedsCommitToMainThread(); |
| 1035 break; | 1053 break; |
| 1036 case 4: | 1054 case 4: |
| 1037 EXPECT_EQ(node->opacity, 0.25f); | 1055 EXPECT_EQ(node->opacity, 0.25f); |
| 1056 impl->sync_tree()->root_layer_for_testing()->OnFilterAnimated( |
| 1057 brightness_filter_); |
| 1058 PostSetNeedsCommitToMainThread(); |
| 1059 break; |
| 1060 case 5: |
| 1061 EXPECT_EQ(node->filters, brightness_filter_); |
| 1062 PostSetNeedsCommitToMainThread(); |
| 1063 break; |
| 1064 case 6: |
| 1065 EXPECT_EQ(node->filters, brightness_filter_); |
| 1066 impl->sync_tree()->root_layer_for_testing()->OnFilterAnimated( |
| 1067 brightness_filter_); |
| 1068 PostSetNeedsCommitToMainThread(); |
| 1069 break; |
| 1070 case 7: |
| 1071 EXPECT_EQ(node->filters, blur_filter_); |
| 1072 PostSetNeedsCommitToMainThread(); |
| 1073 break; |
| 1074 case 8: |
| 1075 EXPECT_EQ(node->filters, sepia_filter_); |
| 1038 EndTest(); | 1076 EndTest(); |
| 1039 break; | 1077 break; |
| 1040 } | 1078 } |
| 1041 } | 1079 } |
| 1042 | 1080 |
| 1043 void AfterTest() override {} | 1081 void AfterTest() override {} |
| 1044 | 1082 |
| 1045 private: | 1083 private: |
| 1046 scoped_refptr<Layer> root_; | 1084 scoped_refptr<Layer> root_; |
| 1085 FilterOperations blur_filter_; |
| 1086 FilterOperations brightness_filter_; |
| 1087 FilterOperations sepia_filter_; |
| 1047 }; | 1088 }; |
| 1048 | 1089 |
| 1049 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestEffectTreeSync); | 1090 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestEffectTreeSync); |
| 1050 | 1091 |
| 1051 class LayerTreeHostTestTransformTreeSync : public LayerTreeHostTest { | 1092 class LayerTreeHostTestTransformTreeSync : public LayerTreeHostTest { |
| 1052 protected: | 1093 protected: |
| 1053 void SetupTree() override { | 1094 void SetupTree() override { |
| 1054 root_ = Layer::Create(); | 1095 root_ = Layer::Create(); |
| 1055 layer_tree_host()->SetRootLayer(root_); | 1096 layer_tree_host()->SetRootLayer(root_); |
| 1056 LayerTreeHostTest::SetupTree(); | 1097 LayerTreeHostTest::SetupTree(); |
| (...skipping 5836 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6893 private: | 6934 private: |
| 6894 FakeContentLayerClient client_; | 6935 FakeContentLayerClient client_; |
| 6895 const gfx::Size viewport_size_; | 6936 const gfx::Size viewport_size_; |
| 6896 const gfx::Size large_image_size_; | 6937 const gfx::Size large_image_size_; |
| 6897 }; | 6938 }; |
| 6898 | 6939 |
| 6899 SINGLE_AND_MULTI_THREAD_TEST_F(GpuRasterizationSucceedsWithLargeImage); | 6940 SINGLE_AND_MULTI_THREAD_TEST_F(GpuRasterizationSucceedsWithLargeImage); |
| 6900 | 6941 |
| 6901 } // namespace | 6942 } // namespace |
| 6902 } // namespace cc | 6943 } // namespace cc |
| OLD | NEW |