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

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

Issue 2615773003: Replace LayerImpl::sorting_context_id with transform reference. (Closed)
Patch Set: Update tests. 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_impl.h" 5 #include "cc/trees/layer_tree_impl.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/memory/ptr_util.h" 8 #include "base/memory/ptr_util.h"
9 #include "cc/layers/heads_up_display_layer_impl.h" 9 #include "cc/layers/heads_up_display_layer_impl.h"
10 #include "cc/test/fake_layer_tree_host_impl.h" 10 #include "cc/test/fake_layer_tree_host_impl.h"
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 std::unique_ptr<LayerImpl> left_child = 73 std::unique_ptr<LayerImpl> left_child =
74 LayerImpl::Create(host_impl().active_tree(), left_child_id); 74 LayerImpl::Create(host_impl().active_tree(), left_child_id);
75 std::unique_ptr<LayerImpl> right_child = 75 std::unique_ptr<LayerImpl> right_child =
76 LayerImpl::Create(host_impl().active_tree(), right_child_id); 76 LayerImpl::Create(host_impl().active_tree(), right_child_id);
77 77
78 gfx::Size bounds(100, 100); 78 gfx::Size bounds(100, 100);
79 { 79 {
80 gfx::Transform translate_z; 80 gfx::Transform translate_z;
81 translate_z.Translate3d(0, 0, root_depth); 81 translate_z.Translate3d(0, 0, root_depth);
82 root->test_properties()->transform = translate_z; 82 root->test_properties()->transform = translate_z;
83 root->test_properties()->sorting_context_id = root_sorting_context;
83 root->SetBounds(bounds); 84 root->SetBounds(bounds);
84 root->SetDrawsContent(true); 85 root->SetDrawsContent(true);
85 root->Set3dSortingContextId(root_sorting_context);
86 } 86 }
87 { 87 {
88 gfx::Transform translate_z; 88 gfx::Transform translate_z;
89 translate_z.Translate3d(0, 0, left_child_depth); 89 translate_z.Translate3d(0, 0, left_child_depth);
90 left_child->test_properties()->transform = translate_z; 90 left_child->test_properties()->transform = translate_z;
91 left_child->test_properties()->sorting_context_id =
92 left_child_sorting_context;
91 left_child->SetBounds(bounds); 93 left_child->SetBounds(bounds);
92 left_child->SetDrawsContent(true); 94 left_child->SetDrawsContent(true);
93 left_child->Set3dSortingContextId(left_child_sorting_context);
94 left_child->test_properties()->should_flatten_transform = false; 95 left_child->test_properties()->should_flatten_transform = false;
95 } 96 }
96 { 97 {
97 gfx::Transform translate_z; 98 gfx::Transform translate_z;
98 translate_z.Translate3d(0, 0, right_child_depth); 99 translate_z.Translate3d(0, 0, right_child_depth);
99 right_child->test_properties()->transform = translate_z; 100 right_child->test_properties()->transform = translate_z;
101 right_child->test_properties()->sorting_context_id =
102 right_child_sorting_context;
100 right_child->SetBounds(bounds); 103 right_child->SetBounds(bounds);
101 right_child->SetDrawsContent(true); 104 right_child->SetDrawsContent(true);
102 right_child->Set3dSortingContextId(right_child_sorting_context);
103 } 105 }
104 106
105 root->test_properties()->AddChild(std::move(left_child)); 107 root->test_properties()->AddChild(std::move(left_child));
106 root->test_properties()->AddChild(std::move(right_child)); 108 root->test_properties()->AddChild(std::move(right_child));
107 109
108 host_impl().SetViewportSize(root->bounds()); 110 host_impl().SetViewportSize(root->bounds());
109 host_impl().active_tree()->SetRootLayerForTesting(std::move(root)); 111 host_impl().active_tree()->SetRootLayerForTesting(std::move(root));
110 host_impl().UpdateNumChildrenAndDrawPropertiesForActiveTree(); 112 host_impl().UpdateNumChildrenAndDrawPropertiesForActiveTree();
111 CHECK_EQ(1u, RenderSurfaceLayerList().size()); 113 CHECK_EQ(1u, RenderSurfaceLayerList().size());
112 114
(...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after
934 /* sorting_contexts */ 10, 10, 10, 936 /* sorting_contexts */ 10, 10, 10,
935 /* depths */ 0, -1, -1); 937 /* depths */ 0, -1, -1);
936 EXPECT_EQ(1, hit_layer_id); 938 EXPECT_EQ(1, hit_layer_id);
937 } 939 }
938 940
939 TEST_F(LayerTreeImplTest, HitTestingForMultipleLayersAtVaryingDepths) { 941 TEST_F(LayerTreeImplTest, HitTestingForMultipleLayersAtVaryingDepths) {
940 LayerImpl* root = root_layer(); 942 LayerImpl* root = root_layer();
941 root->SetBounds(gfx::Size(100, 100)); 943 root->SetBounds(gfx::Size(100, 100));
942 root->SetDrawsContent(true); 944 root->SetDrawsContent(true);
943 root->test_properties()->should_flatten_transform = false; 945 root->test_properties()->should_flatten_transform = false;
944 root->Set3dSortingContextId(1); 946 root->test_properties()->sorting_context_id = 1;
945 { 947 {
946 // child 1 and child2 are initialized to overlap between x=50 and x=60. 948 // child 1 and child2 are initialized to overlap between x=50 and x=60.
947 // grand_child is set to overlap both child1 and child2 between y=50 and 949 // grand_child is set to overlap both child1 and child2 between y=50 and
948 // y=60. The expected stacking order is: (front) child2, (second) 950 // y=60. The expected stacking order is: (front) child2, (second)
949 // grand_child, (third) child1, and (back) the root layer behind all other 951 // grand_child, (third) child1, and (back) the root layer behind all other
950 // layers. 952 // layers.
951 953
952 std::unique_ptr<LayerImpl> child1 = 954 std::unique_ptr<LayerImpl> child1 =
953 LayerImpl::Create(host_impl().active_tree(), 2); 955 LayerImpl::Create(host_impl().active_tree(), 2);
954 std::unique_ptr<LayerImpl> child2 = 956 std::unique_ptr<LayerImpl> child2 =
955 LayerImpl::Create(host_impl().active_tree(), 3); 957 LayerImpl::Create(host_impl().active_tree(), 3);
956 std::unique_ptr<LayerImpl> grand_child1 = 958 std::unique_ptr<LayerImpl> grand_child1 =
957 LayerImpl::Create(host_impl().active_tree(), 4); 959 LayerImpl::Create(host_impl().active_tree(), 4);
958 960
959 child1->SetPosition(gfx::PointF(10.f, 10.f)); 961 child1->SetPosition(gfx::PointF(10.f, 10.f));
960 child1->SetBounds(gfx::Size(50, 50)); 962 child1->SetBounds(gfx::Size(50, 50));
961 child1->SetDrawsContent(true); 963 child1->SetDrawsContent(true);
962 child1->test_properties()->should_flatten_transform = false; 964 child1->test_properties()->should_flatten_transform = false;
963 child1->Set3dSortingContextId(1); 965 child1->test_properties()->sorting_context_id = 1;
964 966
965 child2->SetPosition(gfx::PointF(50.f, 10.f)); 967 child2->SetPosition(gfx::PointF(50.f, 10.f));
966 child2->SetBounds(gfx::Size(50, 50)); 968 child2->SetBounds(gfx::Size(50, 50));
967 gfx::Transform translate_z; 969 gfx::Transform translate_z;
968 translate_z.Translate3d(0, 0, 10.f); 970 translate_z.Translate3d(0, 0, 10.f);
969 child2->test_properties()->transform = translate_z; 971 child2->test_properties()->transform = translate_z;
970 child2->SetDrawsContent(true); 972 child2->SetDrawsContent(true);
971 child2->test_properties()->should_flatten_transform = false; 973 child2->test_properties()->should_flatten_transform = false;
972 child2->Set3dSortingContextId(1); 974 child2->test_properties()->sorting_context_id = 1;
973 975
974 // Remember that grand_child is positioned with respect to its parent (i.e. 976 // Remember that grand_child is positioned with respect to its parent (i.e.
975 // child1). In screen space, the intended position is (10, 50), with size 977 // child1). In screen space, the intended position is (10, 50), with size
976 // 100 x 50. 978 // 100 x 50.
977 grand_child1->SetPosition(gfx::PointF(0.f, 40.f)); 979 grand_child1->SetPosition(gfx::PointF(0.f, 40.f));
978 grand_child1->SetBounds(gfx::Size(100, 50)); 980 grand_child1->SetBounds(gfx::Size(100, 50));
979 grand_child1->SetDrawsContent(true); 981 grand_child1->SetDrawsContent(true);
980 grand_child1->test_properties()->should_flatten_transform = false; 982 grand_child1->test_properties()->should_flatten_transform = false;
981 983
982 child1->test_properties()->AddChild(std::move(grand_child1)); 984 child1->test_properties()->AddChild(std::move(grand_child1));
(...skipping 1424 matching lines...) Expand 10 before | Expand all | Expand 10 after
2407 auto weak_promise = promise->AsWeakPtr(); 2409 auto weak_promise = promise->AsWeakPtr();
2408 host_impl().active_tree()->QueueSwapPromise(std::move(promise)); 2410 host_impl().active_tree()->QueueSwapPromise(std::move(promise));
2409 host_impl().active_tree()->BreakSwapPromises( 2411 host_impl().active_tree()->BreakSwapPromises(
2410 SwapPromise::DidNotSwapReason::SWAP_FAILS); 2412 SwapPromise::DidNotSwapReason::SWAP_FAILS);
2411 EXPECT_FALSE(weak_promise); 2413 EXPECT_FALSE(weak_promise);
2412 } 2414 }
2413 } 2415 }
2414 2416
2415 } // namespace 2417 } // namespace
2416 } // namespace cc 2418 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698