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 925 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
936 layer_tree()->property_trees()->needs_rebuild = true; | 936 layer_tree()->property_trees()->needs_rebuild = true; |
937 break; | 937 break; |
938 default: | 938 default: |
939 EXPECT_FALSE(layer_tree()->property_trees()->needs_rebuild); | 939 EXPECT_FALSE(layer_tree()->property_trees()->needs_rebuild); |
940 } | 940 } |
941 } | 941 } |
942 | 942 |
943 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 943 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
944 gfx::Transform transform; | 944 gfx::Transform transform; |
945 FilterOperations filters; | 945 FilterOperations filters; |
| 946 LayerImpl* root = impl->active_tree()->root_layer_for_testing(); |
946 switch (static_cast<Animations>(index_)) { | 947 switch (static_cast<Animations>(index_)) { |
947 case OPACITY: | 948 case OPACITY: |
948 index_++; | 949 index_++; |
949 impl->active_tree()->ResetAllChangeTracking(); | 950 impl->active_tree()->ResetAllChangeTracking(); |
950 impl->active_tree()->root_layer_for_testing()->OnOpacityAnimated(0.5f); | 951 impl->active_tree()->property_trees()->effect_tree.OnOpacityAnimated( |
| 952 0.5f, root->effect_tree_index(), impl->active_tree()); |
951 PostSetNeedsCommitToMainThread(); | 953 PostSetNeedsCommitToMainThread(); |
952 break; | 954 break; |
953 case TRANSFORM: | 955 case TRANSFORM: |
954 index_++; | 956 index_++; |
955 EXPECT_TRUE(impl->active_tree() | 957 EXPECT_TRUE(impl->active_tree() |
956 ->LayerById(root_->id()) | 958 ->LayerById(root_->id()) |
957 ->LayerPropertyChanged()); | 959 ->LayerPropertyChanged()); |
958 impl->active_tree()->ResetAllChangeTracking(); | 960 impl->active_tree()->ResetAllChangeTracking(); |
959 EXPECT_FALSE(impl->active_tree() | 961 EXPECT_FALSE(impl->active_tree() |
960 ->LayerById(root_->id()) | 962 ->LayerById(root_->id()) |
961 ->LayerPropertyChanged()); | 963 ->LayerPropertyChanged()); |
962 EXPECT_FALSE(impl->active_tree() | 964 EXPECT_FALSE(impl->active_tree() |
963 ->LayerById(child_->id()) | 965 ->LayerById(child_->id()) |
964 ->LayerPropertyChanged()); | 966 ->LayerPropertyChanged()); |
965 transform.Translate(10, 10); | 967 transform.Translate(10, 10); |
966 impl->active_tree()->root_layer_for_testing()->OnTransformAnimated( | 968 root->OnTransformAnimated(transform); |
967 transform); | |
968 PostSetNeedsCommitToMainThread(); | 969 PostSetNeedsCommitToMainThread(); |
969 break; | 970 break; |
970 case FILTER: | 971 case FILTER: |
971 index_++; | 972 index_++; |
972 EXPECT_TRUE(impl->active_tree() | 973 EXPECT_TRUE(root->LayerPropertyChanged()); |
973 ->root_layer_for_testing() | |
974 ->LayerPropertyChanged()); | |
975 EXPECT_TRUE(impl->active_tree() | 974 EXPECT_TRUE(impl->active_tree() |
976 ->LayerById(child_->id()) | 975 ->LayerById(child_->id()) |
977 ->LayerPropertyChanged()); | 976 ->LayerPropertyChanged()); |
978 impl->active_tree()->ResetAllChangeTracking(); | 977 impl->active_tree()->ResetAllChangeTracking(); |
979 EXPECT_FALSE(impl->active_tree() | 978 EXPECT_FALSE(root->LayerPropertyChanged()); |
980 ->root_layer_for_testing() | |
981 ->LayerPropertyChanged()); | |
982 EXPECT_FALSE(impl->active_tree() | 979 EXPECT_FALSE(impl->active_tree() |
983 ->LayerById(child_->id()) | 980 ->LayerById(child_->id()) |
984 ->LayerPropertyChanged()); | 981 ->LayerPropertyChanged()); |
985 filters.Append(FilterOperation::CreateOpacityFilter(0.5f)); | 982 filters.Append(FilterOperation::CreateOpacityFilter(0.5f)); |
986 impl->active_tree()->root_layer_for_testing()->OnFilterAnimated( | 983 root->OnFilterAnimated(filters); |
987 filters); | |
988 PostSetNeedsCommitToMainThread(); | 984 PostSetNeedsCommitToMainThread(); |
989 break; | 985 break; |
990 case END: | 986 case END: |
991 EXPECT_TRUE(impl->active_tree() | 987 EXPECT_TRUE(root->LayerPropertyChanged()); |
992 ->root_layer_for_testing() | |
993 ->LayerPropertyChanged()); | |
994 EndTest(); | 988 EndTest(); |
995 break; | 989 break; |
996 } | 990 } |
997 } | 991 } |
998 | 992 |
999 void AfterTest() override {} | 993 void AfterTest() override {} |
1000 | 994 |
1001 private: | 995 private: |
1002 int index_; | 996 int index_; |
1003 scoped_refptr<Layer> root_; | 997 scoped_refptr<Layer> root_; |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1049 break; | 1043 break; |
1050 case 8: | 1044 case 8: |
1051 node->filters = sepia_filter_; | 1045 node->filters = sepia_filter_; |
1052 node->is_currently_animating_filter = true; | 1046 node->is_currently_animating_filter = true; |
1053 break; | 1047 break; |
1054 } | 1048 } |
1055 } | 1049 } |
1056 | 1050 |
1057 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { | 1051 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { |
1058 EffectTree& effect_tree = impl->sync_tree()->property_trees()->effect_tree; | 1052 EffectTree& effect_tree = impl->sync_tree()->property_trees()->effect_tree; |
1059 EffectNode* node = effect_tree.Node( | 1053 LayerImpl* root = impl->sync_tree()->root_layer_for_testing(); |
1060 impl->sync_tree()->root_layer_for_testing()->effect_tree_index()); | 1054 EffectNode* node = effect_tree.Node(root->effect_tree_index()); |
1061 switch (impl->sync_tree()->source_frame_number()) { | 1055 switch (impl->sync_tree()->source_frame_number()) { |
1062 case 0: | 1056 case 0: |
1063 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); | 1057 effect_tree.OnOpacityAnimated(0.75f, root->effect_tree_index(), |
| 1058 impl->sync_tree()); |
1064 PostSetNeedsCommitToMainThread(); | 1059 PostSetNeedsCommitToMainThread(); |
1065 break; | 1060 break; |
1066 case 1: | 1061 case 1: |
1067 EXPECT_EQ(node->opacity, 0.75f); | 1062 EXPECT_EQ(node->opacity, 0.75f); |
1068 PostSetNeedsCommitToMainThread(); | 1063 PostSetNeedsCommitToMainThread(); |
1069 break; | 1064 break; |
1070 case 2: | 1065 case 2: |
1071 EXPECT_EQ(node->opacity, 0.75f); | 1066 EXPECT_EQ(node->opacity, 0.75f); |
1072 impl->sync_tree()->root_layer_for_testing()->OnOpacityAnimated(0.75f); | 1067 effect_tree.OnOpacityAnimated(0.75f, root->effect_tree_index(), |
| 1068 impl->sync_tree()); |
1073 PostSetNeedsCommitToMainThread(); | 1069 PostSetNeedsCommitToMainThread(); |
1074 break; | 1070 break; |
1075 case 3: | 1071 case 3: |
1076 EXPECT_EQ(node->opacity, 0.5f); | 1072 EXPECT_EQ(node->opacity, 0.5f); |
1077 PostSetNeedsCommitToMainThread(); | 1073 PostSetNeedsCommitToMainThread(); |
1078 break; | 1074 break; |
1079 case 4: | 1075 case 4: |
1080 EXPECT_EQ(node->opacity, 0.25f); | 1076 EXPECT_EQ(node->opacity, 0.25f); |
1081 impl->sync_tree()->root_layer_for_testing()->OnFilterAnimated( | 1077 root->OnFilterAnimated(brightness_filter_); |
1082 brightness_filter_); | |
1083 PostSetNeedsCommitToMainThread(); | 1078 PostSetNeedsCommitToMainThread(); |
1084 break; | 1079 break; |
1085 case 5: | 1080 case 5: |
1086 EXPECT_EQ(node->filters, brightness_filter_); | 1081 EXPECT_EQ(node->filters, brightness_filter_); |
1087 PostSetNeedsCommitToMainThread(); | 1082 PostSetNeedsCommitToMainThread(); |
1088 break; | 1083 break; |
1089 case 6: | 1084 case 6: |
1090 EXPECT_EQ(node->filters, brightness_filter_); | 1085 EXPECT_EQ(node->filters, brightness_filter_); |
1091 impl->sync_tree()->root_layer_for_testing()->OnFilterAnimated( | 1086 root->OnFilterAnimated(brightness_filter_); |
1092 brightness_filter_); | |
1093 PostSetNeedsCommitToMainThread(); | 1087 PostSetNeedsCommitToMainThread(); |
1094 break; | 1088 break; |
1095 case 7: | 1089 case 7: |
1096 EXPECT_EQ(node->filters, blur_filter_); | 1090 EXPECT_EQ(node->filters, blur_filter_); |
1097 PostSetNeedsCommitToMainThread(); | 1091 PostSetNeedsCommitToMainThread(); |
1098 break; | 1092 break; |
1099 case 8: | 1093 case 8: |
1100 EXPECT_EQ(node->filters, sepia_filter_); | 1094 EXPECT_EQ(node->filters, sepia_filter_); |
1101 EndTest(); | 1095 EndTest(); |
1102 break; | 1096 break; |
(...skipping 5928 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7031 private: | 7025 private: |
7032 FakeContentLayerClient client_; | 7026 FakeContentLayerClient client_; |
7033 const gfx::Size viewport_size_; | 7027 const gfx::Size viewport_size_; |
7034 const gfx::Size large_image_size_; | 7028 const gfx::Size large_image_size_; |
7035 }; | 7029 }; |
7036 | 7030 |
7037 SINGLE_AND_MULTI_THREAD_TEST_F(GpuRasterizationSucceedsWithLargeImage); | 7031 SINGLE_AND_MULTI_THREAD_TEST_F(GpuRasterizationSucceedsWithLargeImage); |
7038 | 7032 |
7039 } // namespace | 7033 } // namespace |
7040 } // namespace cc | 7034 } // namespace cc |
OLD | NEW |