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

Side by Side Diff: cc/trees/layer_tree_host_unittest.cc

Issue 2623313003: Add map from element id to scroll node index. (Closed)
Patch Set: Sync to head. Created 3 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
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/property_tree.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 #include "cc/test/push_properties_counting_layer.h" 50 #include "cc/test/push_properties_counting_layer.h"
51 #include "cc/test/push_properties_counting_layer_impl.h" 51 #include "cc/test/push_properties_counting_layer_impl.h"
52 #include "cc/test/render_pass_test_utils.h" 52 #include "cc/test/render_pass_test_utils.h"
53 #include "cc/test/skia_common.h" 53 #include "cc/test/skia_common.h"
54 #include "cc/test/test_compositor_frame_sink.h" 54 #include "cc/test/test_compositor_frame_sink.h"
55 #include "cc/test/test_web_graphics_context_3d.h" 55 #include "cc/test/test_web_graphics_context_3d.h"
56 #include "cc/trees/effect_node.h" 56 #include "cc/trees/effect_node.h"
57 #include "cc/trees/layer_tree_host_common.h" 57 #include "cc/trees/layer_tree_host_common.h"
58 #include "cc/trees/layer_tree_host_impl.h" 58 #include "cc/trees/layer_tree_host_impl.h"
59 #include "cc/trees/layer_tree_impl.h" 59 #include "cc/trees/layer_tree_impl.h"
60 #include "cc/trees/scroll_node.h"
60 #include "cc/trees/single_thread_proxy.h" 61 #include "cc/trees/single_thread_proxy.h"
61 #include "cc/trees/swap_promise_manager.h" 62 #include "cc/trees/swap_promise_manager.h"
62 #include "cc/trees/transform_node.h" 63 #include "cc/trees/transform_node.h"
63 #include "gpu/GLES2/gl2extchromium.h" 64 #include "gpu/GLES2/gl2extchromium.h"
64 #include "testing/gmock/include/gmock/gmock.h" 65 #include "testing/gmock/include/gmock/gmock.h"
65 #include "third_party/khronos/GLES2/gl2.h" 66 #include "third_party/khronos/GLES2/gl2.h"
66 #include "third_party/khronos/GLES2/gl2ext.h" 67 #include "third_party/khronos/GLES2/gl2ext.h"
67 #include "third_party/skia/include/core/SkPicture.h" 68 #include "third_party/skia/include/core/SkPicture.h"
68 #include "third_party/skia/include/gpu/GrContext.h" 69 #include "third_party/skia/include/gpu/GrContext.h"
69 #include "ui/gfx/geometry/point_conversions.h" 70 #include "ui/gfx/geometry/point_conversions.h"
(...skipping 866 matching lines...) Expand 10 before | Expand all | Expand 10 after
936 layer_tree()->SetRootLayer(root_); 937 layer_tree()->SetRootLayer(root_);
937 LayerTreeHostTest::SetupTree(); 938 LayerTreeHostTest::SetupTree();
938 } 939 }
939 940
940 void BeginTest() override { PostSetNeedsCommitToMainThread(); } 941 void BeginTest() override { PostSetNeedsCommitToMainThread(); }
941 942
942 void DidCommit() override { 943 void DidCommit() override {
943 switch (layer_tree_host()->SourceFrameNumber()) { 944 switch (layer_tree_host()->SourceFrameNumber()) {
944 case 1: 945 case 1:
945 child_->SetForceRenderSurfaceForTesting(true); 946 child_->SetForceRenderSurfaceForTesting(true);
947 child_->AddMainThreadScrollingReasons(
948 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
946 break; 949 break;
947 case 2: 950 case 2:
948 child_->SetForceRenderSurfaceForTesting(false); 951 child_->SetForceRenderSurfaceForTesting(false);
952 child_->ClearMainThreadScrollingReasons(
953 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
949 break; 954 break;
950 } 955 }
951 } 956 }
952 957
953 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override { 958 void CommitCompleteOnThread(LayerTreeHostImpl* impl) override {
954 PropertyTrees* property_trees = impl->sync_tree()->property_trees(); 959 PropertyTrees* property_trees = impl->sync_tree()->property_trees();
955 LayerImpl* child_impl_ = impl->sync_tree()->LayerById(child_->id()); 960 LayerImpl* child_impl_ = impl->sync_tree()->LayerById(child_->id());
956 switch (impl->sync_tree()->source_frame_number()) { 961 switch (impl->sync_tree()->source_frame_number()) {
957 case 0: 962 case 0:
958 EXPECT_EQ(2U, child_impl_->layer_tree_impl() 963 EXPECT_EQ(2U, child_impl_->layer_tree_impl()
959 ->property_trees() 964 ->property_trees()
960 ->transform_tree.size()); 965 ->transform_tree.size());
961 EXPECT_EQ(2U, child_impl_->layer_tree_impl() 966 EXPECT_EQ(2U, child_impl_->layer_tree_impl()
962 ->property_trees() 967 ->property_trees()
963 ->effect_tree.size()); 968 ->effect_tree.size());
969 EXPECT_EQ(2U, child_impl_->layer_tree_impl()
970 ->property_trees()
971 ->scroll_tree.size());
964 EXPECT_TRUE(property_trees->element_id_to_transform_node_index.find( 972 EXPECT_TRUE(property_trees->element_id_to_transform_node_index.find(
965 kTestElementId) == 973 kTestElementId) ==
966 property_trees->element_id_to_transform_node_index.end()); 974 property_trees->element_id_to_transform_node_index.end());
967 EXPECT_TRUE(property_trees->element_id_to_effect_node_index.find( 975 EXPECT_TRUE(property_trees->element_id_to_effect_node_index.find(
968 kTestElementId) == 976 kTestElementId) ==
969 property_trees->element_id_to_effect_node_index.end()); 977 property_trees->element_id_to_effect_node_index.end());
978 EXPECT_TRUE(property_trees->element_id_to_scroll_node_index.find(
979 kTestElementId) ==
980 property_trees->element_id_to_scroll_node_index.end());
970 break; 981 break;
971 case 1: 982 case 1:
972 EXPECT_EQ(3U, child_impl_->layer_tree_impl() 983 EXPECT_EQ(3U, child_impl_->layer_tree_impl()
973 ->property_trees() 984 ->property_trees()
974 ->transform_tree.size()); 985 ->transform_tree.size());
975 EXPECT_EQ(3U, child_impl_->layer_tree_impl() 986 EXPECT_EQ(3U, child_impl_->layer_tree_impl()
976 ->property_trees() 987 ->property_trees()
977 ->effect_tree.size()); 988 ->effect_tree.size());
989 EXPECT_EQ(3U, child_impl_->layer_tree_impl()
990 ->property_trees()
991 ->scroll_tree.size());
978 EXPECT_EQ( 992 EXPECT_EQ(
979 2, 993 2,
980 property_trees->element_id_to_transform_node_index[kTestElementId]); 994 property_trees->element_id_to_transform_node_index[kTestElementId]);
981 EXPECT_EQ( 995 EXPECT_EQ(
982 2, property_trees->element_id_to_effect_node_index[kTestElementId]); 996 2, property_trees->element_id_to_effect_node_index[kTestElementId]);
997 EXPECT_EQ(
998 2, property_trees->element_id_to_scroll_node_index[kTestElementId]);
983 break; 999 break;
984 case 2: 1000 case 2:
985 EXPECT_EQ(2U, child_impl_->layer_tree_impl() 1001 EXPECT_EQ(2U, child_impl_->layer_tree_impl()
986 ->property_trees() 1002 ->property_trees()
987 ->transform_tree.size()); 1003 ->transform_tree.size());
988 EXPECT_EQ(2U, child_impl_->layer_tree_impl() 1004 EXPECT_EQ(2U, child_impl_->layer_tree_impl()
989 ->property_trees() 1005 ->property_trees()
990 ->effect_tree.size()); 1006 ->effect_tree.size());
991 EXPECT_TRUE(property_trees->element_id_to_transform_node_index.find( 1007 EXPECT_TRUE(property_trees->element_id_to_transform_node_index.find(
992 kTestElementId) == 1008 kTestElementId) ==
993 property_trees->element_id_to_transform_node_index.end()); 1009 property_trees->element_id_to_transform_node_index.end());
994 EXPECT_TRUE(property_trees->element_id_to_effect_node_index.find( 1010 EXPECT_TRUE(property_trees->element_id_to_effect_node_index.find(
995 kTestElementId) == 1011 kTestElementId) ==
996 property_trees->element_id_to_effect_node_index.end()); 1012 property_trees->element_id_to_effect_node_index.end());
1013 EXPECT_TRUE(property_trees->element_id_to_scroll_node_index.find(
1014 kTestElementId) ==
1015 property_trees->element_id_to_scroll_node_index.end());
997 break; 1016 break;
998 } 1017 }
999 EndTest(); 1018 EndTest();
1000 } 1019 }
1001 1020
1002 void AfterTest() override {} 1021 void AfterTest() override {}
1003 1022
1004 private: 1023 private:
1005 const ElementId kTestElementId = ElementId(42, 8118); 1024 const ElementId kTestElementId = ElementId(42, 8118);
1006 1025
(...skipping 6141 matching lines...) Expand 10 before | Expand all | Expand 10 after
7148 EndTest(); 7167 EndTest();
7149 } 7168 }
7150 7169
7151 void AfterTest() override {} 7170 void AfterTest() override {}
7152 }; 7171 };
7153 7172
7154 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestSubmitFrameResources); 7173 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostTestSubmitFrameResources);
7155 7174
7156 } // namespace 7175 } // namespace
7157 } // namespace cc 7176 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/property_tree.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698