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_common.h" | 5 #include "cc/trees/layer_tree_host_common.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <set> | 10 #include <set> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
| 13 #include "base/memory/ptr_util.h" |
13 #include "cc/animation/animation_host.h" | 14 #include "cc/animation/animation_host.h" |
14 #include "cc/animation/animation_id_provider.h" | 15 #include "cc/animation/animation_id_provider.h" |
15 #include "cc/animation/animation_player.h" | 16 #include "cc/animation/animation_player.h" |
16 #include "cc/animation/keyframed_animation_curve.h" | 17 #include "cc/animation/keyframed_animation_curve.h" |
17 #include "cc/animation/layer_animation_controller.h" | 18 #include "cc/animation/layer_animation_controller.h" |
18 #include "cc/animation/transform_operations.h" | 19 #include "cc/animation/transform_operations.h" |
19 #include "cc/base/math_util.h" | 20 #include "cc/base/math_util.h" |
20 #include "cc/input/main_thread_scrolling_reason.h" | 21 #include "cc/input/main_thread_scrolling_reason.h" |
21 #include "cc/layers/content_layer_client.h" | 22 #include "cc/layers/content_layer_client.h" |
22 #include "cc/layers/layer.h" | 23 #include "cc/layers/layer.h" |
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
259 float page_scale = 0.888f; | 260 float page_scale = 0.888f; |
260 const float kDeviceScale = 1.666f; | 261 const float kDeviceScale = 1.666f; |
261 | 262 |
262 FakeImplTaskRunnerProvider task_runner_provider; | 263 FakeImplTaskRunnerProvider task_runner_provider; |
263 TestSharedBitmapManager shared_bitmap_manager; | 264 TestSharedBitmapManager shared_bitmap_manager; |
264 TestTaskGraphRunner task_graph_runner; | 265 TestTaskGraphRunner task_graph_runner; |
265 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 266 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
266 &task_graph_runner); | 267 &task_graph_runner); |
267 | 268 |
268 gfx::Transform identity_matrix; | 269 gfx::Transform identity_matrix; |
269 scoped_ptr<LayerImpl> sublayer_scoped_ptr( | 270 std::unique_ptr<LayerImpl> sublayer_scoped_ptr( |
270 LayerImpl::Create(host_impl.active_tree(), 1)); | 271 LayerImpl::Create(host_impl.active_tree(), 1)); |
271 LayerImpl* sublayer = sublayer_scoped_ptr.get(); | 272 LayerImpl* sublayer = sublayer_scoped_ptr.get(); |
272 sublayer->SetDrawsContent(true); | 273 sublayer->SetDrawsContent(true); |
273 SetLayerPropertiesForTesting(sublayer, identity_matrix, gfx::Point3F(), | 274 SetLayerPropertiesForTesting(sublayer, identity_matrix, gfx::Point3F(), |
274 gfx::PointF(), gfx::Size(500, 500), true, false, | 275 gfx::PointF(), gfx::Size(500, 500), true, false, |
275 false); | 276 false); |
276 | 277 |
277 scoped_ptr<LayerImpl> scroll_layer_scoped_ptr( | 278 std::unique_ptr<LayerImpl> scroll_layer_scoped_ptr( |
278 LayerImpl::Create(host_impl.active_tree(), 2)); | 279 LayerImpl::Create(host_impl.active_tree(), 2)); |
279 LayerImpl* scroll_layer = scroll_layer_scoped_ptr.get(); | 280 LayerImpl* scroll_layer = scroll_layer_scoped_ptr.get(); |
280 SetLayerPropertiesForTesting(scroll_layer, identity_matrix, gfx::Point3F(), | 281 SetLayerPropertiesForTesting(scroll_layer, identity_matrix, gfx::Point3F(), |
281 gfx::PointF(), gfx::Size(10, 20), true, false, | 282 gfx::PointF(), gfx::Size(10, 20), true, false, |
282 false); | 283 false); |
283 scoped_ptr<LayerImpl> clip_layer_scoped_ptr( | 284 std::unique_ptr<LayerImpl> clip_layer_scoped_ptr( |
284 LayerImpl::Create(host_impl.active_tree(), 4)); | 285 LayerImpl::Create(host_impl.active_tree(), 4)); |
285 LayerImpl* clip_layer = clip_layer_scoped_ptr.get(); | 286 LayerImpl* clip_layer = clip_layer_scoped_ptr.get(); |
286 | 287 |
287 scroll_layer->SetScrollClipLayer(clip_layer->id()); | 288 scroll_layer->SetScrollClipLayer(clip_layer->id()); |
288 clip_layer->SetBounds( | 289 clip_layer->SetBounds( |
289 gfx::Size(scroll_layer->bounds().width() + kMaxScrollOffset.x(), | 290 gfx::Size(scroll_layer->bounds().width() + kMaxScrollOffset.x(), |
290 scroll_layer->bounds().height() + kMaxScrollOffset.y())); | 291 scroll_layer->bounds().height() + kMaxScrollOffset.y())); |
291 scroll_layer->SetScrollClipLayer(clip_layer->id()); | 292 scroll_layer->SetScrollClipLayer(clip_layer->id()); |
292 SetScrollOffsetDelta(scroll_layer, kScrollDelta); | 293 SetScrollOffsetDelta(scroll_layer, kScrollDelta); |
293 gfx::Transform impl_transform; | 294 gfx::Transform impl_transform; |
294 scroll_layer->AddChild(std::move(sublayer_scoped_ptr)); | 295 scroll_layer->AddChild(std::move(sublayer_scoped_ptr)); |
295 LayerImpl* scroll_layer_raw_ptr = scroll_layer_scoped_ptr.get(); | 296 LayerImpl* scroll_layer_raw_ptr = scroll_layer_scoped_ptr.get(); |
296 clip_layer->AddChild(std::move(scroll_layer_scoped_ptr)); | 297 clip_layer->AddChild(std::move(scroll_layer_scoped_ptr)); |
297 scroll_layer_raw_ptr->layer_tree_impl() | 298 scroll_layer_raw_ptr->layer_tree_impl() |
298 ->property_trees() | 299 ->property_trees() |
299 ->scroll_tree.UpdateScrollOffsetBaseForTesting(scroll_layer_raw_ptr->id(), | 300 ->scroll_tree.UpdateScrollOffsetBaseForTesting(scroll_layer_raw_ptr->id(), |
300 kScrollOffset); | 301 kScrollOffset); |
301 | 302 |
302 scoped_ptr<LayerImpl> root(LayerImpl::Create(host_impl.active_tree(), 3)); | 303 std::unique_ptr<LayerImpl> root( |
| 304 LayerImpl::Create(host_impl.active_tree(), 3)); |
303 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 305 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
304 gfx::PointF(), gfx::Size(3, 4), true, false, | 306 gfx::PointF(), gfx::Size(3, 4), true, false, |
305 false); | 307 false); |
306 root->AddChild(std::move(clip_layer_scoped_ptr)); | 308 root->AddChild(std::move(clip_layer_scoped_ptr)); |
307 root->SetHasRenderSurface(true); | 309 root->SetHasRenderSurface(true); |
308 LayerImpl* root_layer = root.get(); | 310 LayerImpl* root_layer = root.get(); |
309 host_impl.active_tree()->SetRootLayer(std::move(root)); | 311 host_impl.active_tree()->SetRootLayer(std::move(root)); |
310 | 312 |
311 ExecuteCalculateDrawProperties(root_layer, kDeviceScale, page_scale, | 313 ExecuteCalculateDrawProperties(root_layer, kDeviceScale, page_scale, |
312 scroll_layer->parent()); | 314 scroll_layer->parent()); |
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
612 EXPECT_TRANSFORMATION_MATRIX_EQ(expected_grand_child_screen_space_transform, | 614 EXPECT_TRANSFORMATION_MATRIX_EQ(expected_grand_child_screen_space_transform, |
613 grand_child->ScreenSpaceTransform()); | 615 grand_child->ScreenSpaceTransform()); |
614 } | 616 } |
615 | 617 |
616 TEST_F(LayerTreeHostCommonTest, TransformsForReplica) { | 618 TEST_F(LayerTreeHostCommonTest, TransformsForReplica) { |
617 LayerImpl* root = root_layer(); | 619 LayerImpl* root = root_layer(); |
618 LayerImpl* parent = AddChildToRoot<LayerImpl>(); | 620 LayerImpl* parent = AddChildToRoot<LayerImpl>(); |
619 LayerImpl* child = AddChild<LayerImpl>(parent); | 621 LayerImpl* child = AddChild<LayerImpl>(parent); |
620 LayerImpl* grand_child = AddChild<LayerImpl>(child); | 622 LayerImpl* grand_child = AddChild<LayerImpl>(child); |
621 grand_child->SetDrawsContent(true); | 623 grand_child->SetDrawsContent(true); |
622 scoped_ptr<LayerImpl> child_replica = | 624 std::unique_ptr<LayerImpl> child_replica = |
623 LayerImpl::Create(host_impl()->active_tree(), 100); | 625 LayerImpl::Create(host_impl()->active_tree(), 100); |
624 | 626 |
625 // One-time setup of root layer | 627 // One-time setup of root layer |
626 gfx::Transform identity_matrix; | 628 gfx::Transform identity_matrix; |
627 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 629 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
628 gfx::PointF(), gfx::Size(1, 2), true, false, | 630 gfx::PointF(), gfx::Size(1, 2), true, false, |
629 true); | 631 true); |
630 | 632 |
631 // Child is set up so that a new render surface should be created. | 633 // Child is set up so that a new render surface should be created. |
632 child->SetOpacity(0.5f); | 634 child->SetOpacity(0.5f); |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
709 child_of_rs1->SetDrawsContent(true); | 711 child_of_rs1->SetDrawsContent(true); |
710 LayerImpl* child_of_rs2 = AddChild<LayerImpl>(render_surface2); | 712 LayerImpl* child_of_rs2 = AddChild<LayerImpl>(render_surface2); |
711 child_of_rs2->SetDrawsContent(true); | 713 child_of_rs2->SetDrawsContent(true); |
712 LayerImpl* grand_child_of_root = AddChild<LayerImpl>(child_of_root); | 714 LayerImpl* grand_child_of_root = AddChild<LayerImpl>(child_of_root); |
713 grand_child_of_root->SetDrawsContent(true); | 715 grand_child_of_root->SetDrawsContent(true); |
714 LayerImpl* grand_child_of_rs1 = AddChild<LayerImpl>(child_of_rs1); | 716 LayerImpl* grand_child_of_rs1 = AddChild<LayerImpl>(child_of_rs1); |
715 grand_child_of_rs1->SetDrawsContent(true); | 717 grand_child_of_rs1->SetDrawsContent(true); |
716 LayerImpl* grand_child_of_rs2 = AddChild<LayerImpl>(child_of_rs2); | 718 LayerImpl* grand_child_of_rs2 = AddChild<LayerImpl>(child_of_rs2); |
717 grand_child_of_rs2->SetDrawsContent(true); | 719 grand_child_of_rs2->SetDrawsContent(true); |
718 | 720 |
719 scoped_ptr<LayerImpl> replica_of_rs1 = | 721 std::unique_ptr<LayerImpl> replica_of_rs1 = |
720 LayerImpl::Create(host_impl()->active_tree(), 101); | 722 LayerImpl::Create(host_impl()->active_tree(), 101); |
721 scoped_ptr<LayerImpl> replica_of_rs2 = | 723 std::unique_ptr<LayerImpl> replica_of_rs2 = |
722 LayerImpl::Create(host_impl()->active_tree(), 102); | 724 LayerImpl::Create(host_impl()->active_tree(), 102); |
723 | 725 |
724 // In combination with descendant draws content, opacity != 1 forces the layer | 726 // In combination with descendant draws content, opacity != 1 forces the layer |
725 // to have a new render surface. | 727 // to have a new render surface. |
726 render_surface1->SetOpacity(0.5f); | 728 render_surface1->SetOpacity(0.5f); |
727 render_surface2->SetOpacity(0.33f); | 729 render_surface2->SetOpacity(0.33f); |
728 | 730 |
729 // One-time setup of root layer | 731 // One-time setup of root layer |
730 gfx::Transform identity_matrix; | 732 gfx::Transform identity_matrix; |
731 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 733 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
(...skipping 1957 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2689 SetLayerPropertiesForTesting(child, identity, gfx::Point3F(), gfx::PointF(), | 2691 SetLayerPropertiesForTesting(child, identity, gfx::Point3F(), gfx::PointF(), |
2690 gfx::Size(10, 10), true, false, false); | 2692 gfx::Size(10, 10), true, false, false); |
2691 SetLayerPropertiesForTesting(grand_child, identity, gfx::Point3F(), | 2693 SetLayerPropertiesForTesting(grand_child, identity, gfx::Point3F(), |
2692 gfx::PointF(), gfx::Size(10, 10), true, false, | 2694 gfx::PointF(), gfx::Size(10, 10), true, false, |
2693 false); | 2695 false); |
2694 SetLayerPropertiesForTesting(great_grand_child, identity, gfx::Point3F(), | 2696 SetLayerPropertiesForTesting(great_grand_child, identity, gfx::Point3F(), |
2695 gfx::PointF(), gfx::Size(10, 10), true, false, | 2697 gfx::PointF(), gfx::Size(10, 10), true, false, |
2696 false); | 2698 false); |
2697 | 2699 |
2698 // Add a transform animation with a start delay to |grand_child|. | 2700 // Add a transform animation with a start delay to |grand_child|. |
2699 scoped_ptr<Animation> animation = Animation::Create( | 2701 std::unique_ptr<Animation> animation = Animation::Create( |
2700 scoped_ptr<AnimationCurve>(new FakeTransformTransition(1.0)), 0, 1, | 2702 std::unique_ptr<AnimationCurve>(new FakeTransformTransition(1.0)), 0, 1, |
2701 TargetProperty::TRANSFORM); | 2703 TargetProperty::TRANSFORM); |
2702 animation->set_fill_mode(Animation::FILL_MODE_NONE); | 2704 animation->set_fill_mode(Animation::FILL_MODE_NONE); |
2703 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); | 2705 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); |
2704 AddAnimationToLayerWithPlayer(grand_child->id(), timeline_impl(), | 2706 AddAnimationToLayerWithPlayer(grand_child->id(), timeline_impl(), |
2705 std::move(animation)); | 2707 std::move(animation)); |
2706 ExecuteCalculateDrawProperties(parent); | 2708 ExecuteCalculateDrawProperties(parent); |
2707 | 2709 |
2708 EXPECT_FALSE(parent->screen_space_transform_is_animating()); | 2710 EXPECT_FALSE(parent->screen_space_transform_is_animating()); |
2709 EXPECT_FALSE(child->screen_space_transform_is_animating()); | 2711 EXPECT_FALSE(child->screen_space_transform_is_animating()); |
2710 | 2712 |
(...skipping 823 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3534 // CalcDrawProps skips a subtree when a layer's screen space transform is | 3536 // CalcDrawProps skips a subtree when a layer's screen space transform is |
3535 // uninvertible | 3537 // uninvertible |
3536 EXPECT_EQ(gfx::Rect(), grand_child->visible_layer_rect()); | 3538 EXPECT_EQ(gfx::Rect(), grand_child->visible_layer_rect()); |
3537 } | 3539 } |
3538 | 3540 |
3539 TEST_F(LayerTreeHostCommonTest, | 3541 TEST_F(LayerTreeHostCommonTest, |
3540 OcclusionForLayerWithUninvertibleDrawTransform) { | 3542 OcclusionForLayerWithUninvertibleDrawTransform) { |
3541 FakeImplTaskRunnerProvider task_runner_provider; | 3543 FakeImplTaskRunnerProvider task_runner_provider; |
3542 TestSharedBitmapManager shared_bitmap_manager; | 3544 TestSharedBitmapManager shared_bitmap_manager; |
3543 TestTaskGraphRunner task_graph_runner; | 3545 TestTaskGraphRunner task_graph_runner; |
3544 scoped_ptr<OutputSurface> output_surface = FakeOutputSurface::Create3d(); | 3546 std::unique_ptr<OutputSurface> output_surface = FakeOutputSurface::Create3d(); |
3545 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 3547 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
3546 &task_graph_runner); | 3548 &task_graph_runner); |
3547 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.active_tree(), 1); | 3549 std::unique_ptr<LayerImpl> root = |
3548 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.active_tree(), 2); | 3550 LayerImpl::Create(host_impl.active_tree(), 1); |
3549 scoped_ptr<LayerImpl> grand_child = | 3551 std::unique_ptr<LayerImpl> child = |
| 3552 LayerImpl::Create(host_impl.active_tree(), 2); |
| 3553 std::unique_ptr<LayerImpl> grand_child = |
3550 LayerImpl::Create(host_impl.active_tree(), 3); | 3554 LayerImpl::Create(host_impl.active_tree(), 3); |
3551 scoped_ptr<LayerImpl> occluding_child = | 3555 std::unique_ptr<LayerImpl> occluding_child = |
3552 LayerImpl::Create(host_impl.active_tree(), 4); | 3556 LayerImpl::Create(host_impl.active_tree(), 4); |
3553 child->SetDrawsContent(true); | 3557 child->SetDrawsContent(true); |
3554 grand_child->SetDrawsContent(true); | 3558 grand_child->SetDrawsContent(true); |
3555 occluding_child->SetDrawsContent(true); | 3559 occluding_child->SetDrawsContent(true); |
3556 occluding_child->SetContentsOpaque(true); | 3560 occluding_child->SetContentsOpaque(true); |
3557 | 3561 |
3558 gfx::Transform identity_matrix; | 3562 gfx::Transform identity_matrix; |
3559 gfx::Transform perspective; | 3563 gfx::Transform perspective; |
3560 perspective.ApplyPerspectiveDepth(SkDoubleToMScalar(1e-12)); | 3564 perspective.ApplyPerspectiveDepth(SkDoubleToMScalar(1e-12)); |
3561 | 3565 |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3773 } | 3777 } |
3774 | 3778 |
3775 TEST_F(LayerTreeHostCommonTest, ClipChildWithSingularTransform) { | 3779 TEST_F(LayerTreeHostCommonTest, ClipChildWithSingularTransform) { |
3776 LayerImpl* root = root_layer(); | 3780 LayerImpl* root = root_layer(); |
3777 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); | 3781 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); |
3778 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); | 3782 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); |
3779 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); | 3783 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); |
3780 | 3784 |
3781 clip_child->SetDrawsContent(true); | 3785 clip_child->SetDrawsContent(true); |
3782 clip_child->SetClipParent(clip_parent); | 3786 clip_child->SetClipParent(clip_parent); |
3783 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 3787 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
3784 clip_children->insert(clip_child); | 3788 clip_children->insert(clip_child); |
3785 clip_parent->SetClipChildren(clip_children.release()); | 3789 clip_parent->SetClipChildren(clip_children.release()); |
3786 | 3790 |
3787 gfx::Transform identity_matrix; | 3791 gfx::Transform identity_matrix; |
3788 gfx::Transform singular_matrix(0.0, 0.0, 0.0, 0.0, 0.0, 0.0); | 3792 gfx::Transform singular_matrix(0.0, 0.0, 0.0, 0.0, 0.0, 0.0); |
3789 ASSERT_FALSE(singular_matrix.IsInvertible()); | 3793 ASSERT_FALSE(singular_matrix.IsInvertible()); |
3790 | 3794 |
3791 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 3795 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
3792 gfx::PointF(), gfx::Size(100, 100), true, false, | 3796 gfx::PointF(), gfx::Size(100, 100), true, false, |
3793 true); | 3797 true); |
(...skipping 16 matching lines...) Expand all Loading... |
3810 LayerImpl* root = root_layer(); | 3814 LayerImpl* root = root_layer(); |
3811 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); | 3815 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); |
3812 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); | 3816 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); |
3813 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); | 3817 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); |
3814 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_child); | 3818 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_child); |
3815 | 3819 |
3816 render_surface1->SetDrawsContent(true); | 3820 render_surface1->SetDrawsContent(true); |
3817 render_surface2->SetDrawsContent(true); | 3821 render_surface2->SetDrawsContent(true); |
3818 clip_child->SetDrawsContent(true); | 3822 clip_child->SetDrawsContent(true); |
3819 clip_child->SetClipParent(clip_parent); | 3823 clip_child->SetClipParent(clip_parent); |
3820 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 3824 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
3821 clip_children->insert(clip_child); | 3825 clip_children->insert(clip_child); |
3822 clip_parent->SetClipChildren(clip_children.release()); | 3826 clip_parent->SetClipChildren(clip_children.release()); |
3823 | 3827 |
3824 gfx::Transform identity_matrix; | 3828 gfx::Transform identity_matrix; |
3825 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 3829 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
3826 gfx::PointF(), gfx::Size(100, 100), true, false, | 3830 gfx::PointF(), gfx::Size(100, 100), true, false, |
3827 true); | 3831 true); |
3828 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 3832 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
3829 gfx::PointF(), gfx::Size(50, 50), true, false, | 3833 gfx::PointF(), gfx::Size(50, 50), true, false, |
3830 false); | 3834 false); |
(...skipping 19 matching lines...) Expand all Loading... |
3850 LayerImpl* root = root_layer(); | 3854 LayerImpl* root = root_layer(); |
3851 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); | 3855 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); |
3852 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); | 3856 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); |
3853 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); | 3857 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); |
3854 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_child); | 3858 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_child); |
3855 | 3859 |
3856 render_surface1->SetDrawsContent(true); | 3860 render_surface1->SetDrawsContent(true); |
3857 render_surface2->SetDrawsContent(true); | 3861 render_surface2->SetDrawsContent(true); |
3858 clip_child->SetDrawsContent(true); | 3862 clip_child->SetDrawsContent(true); |
3859 clip_child->SetClipParent(clip_parent); | 3863 clip_child->SetClipParent(clip_parent); |
3860 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 3864 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
3861 clip_children->insert(clip_child); | 3865 clip_children->insert(clip_child); |
3862 clip_parent->SetClipChildren(clip_children.release()); | 3866 clip_parent->SetClipChildren(clip_children.release()); |
3863 | 3867 |
3864 gfx::Transform identity_matrix; | 3868 gfx::Transform identity_matrix; |
3865 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 3869 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
3866 gfx::PointF(), gfx::Size(100, 100), true, false, | 3870 gfx::PointF(), gfx::Size(100, 100), true, false, |
3867 true); | 3871 true); |
3868 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 3872 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
3869 gfx::PointF(2.f, 2.f), gfx::Size(50, 50), true, | 3873 gfx::PointF(2.f, 2.f), gfx::Size(50, 50), true, |
3870 false, false); | 3874 false, false); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3920 LayerImpl* unclipped_surface = AddChildToRoot<LayerImpl>(); | 3924 LayerImpl* unclipped_surface = AddChildToRoot<LayerImpl>(); |
3921 LayerImpl* clip_parent = AddChild<LayerImpl>(unclipped_surface); | 3925 LayerImpl* clip_parent = AddChild<LayerImpl>(unclipped_surface); |
3922 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); | 3926 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); |
3923 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); | 3927 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); |
3924 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); | 3928 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); |
3925 | 3929 |
3926 unclipped_surface->SetDrawsContent(true); | 3930 unclipped_surface->SetDrawsContent(true); |
3927 unclipped_desc_surface->SetDrawsContent(true); | 3931 unclipped_desc_surface->SetDrawsContent(true); |
3928 clipped_surface->SetDrawsContent(true); | 3932 clipped_surface->SetDrawsContent(true); |
3929 clip_child->SetClipParent(clip_parent); | 3933 clip_child->SetClipParent(clip_parent); |
3930 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 3934 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
3931 clip_children->insert(clip_child); | 3935 clip_children->insert(clip_child); |
3932 clip_parent->SetClipChildren(clip_children.release()); | 3936 clip_parent->SetClipChildren(clip_children.release()); |
3933 | 3937 |
3934 gfx::Transform identity_matrix; | 3938 gfx::Transform identity_matrix; |
3935 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 3939 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
3936 gfx::PointF(), gfx::Size(100, 100), true, false, | 3940 gfx::PointF(), gfx::Size(100, 100), true, false, |
3937 true); | 3941 true); |
3938 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, | 3942 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, |
3939 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 3943 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
3940 true, false, true); | 3944 true, false, true); |
(...skipping 25 matching lines...) Expand all Loading... |
3966 LayerImpl* unclipped_surface = AddChildToRoot<LayerImpl>(); | 3970 LayerImpl* unclipped_surface = AddChildToRoot<LayerImpl>(); |
3967 LayerImpl* clip_parent = AddChild<LayerImpl>(unclipped_surface); | 3971 LayerImpl* clip_parent = AddChild<LayerImpl>(unclipped_surface); |
3968 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); | 3972 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); |
3969 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); | 3973 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); |
3970 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); | 3974 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); |
3971 | 3975 |
3972 unclipped_surface->SetDrawsContent(true); | 3976 unclipped_surface->SetDrawsContent(true); |
3973 unclipped_desc_surface->SetDrawsContent(true); | 3977 unclipped_desc_surface->SetDrawsContent(true); |
3974 clipped_surface->SetDrawsContent(true); | 3978 clipped_surface->SetDrawsContent(true); |
3975 clip_child->SetClipParent(clip_parent); | 3979 clip_child->SetClipParent(clip_parent); |
3976 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 3980 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
3977 clip_children->insert(clip_child); | 3981 clip_children->insert(clip_child); |
3978 clip_parent->SetClipChildren(clip_children.release()); | 3982 clip_parent->SetClipChildren(clip_children.release()); |
3979 | 3983 |
3980 gfx::Transform identity_matrix; | 3984 gfx::Transform identity_matrix; |
3981 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 3985 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
3982 gfx::PointF(), gfx::Size(10, 10), true, false, | 3986 gfx::PointF(), gfx::Size(10, 10), true, false, |
3983 true); | 3987 true); |
3984 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, | 3988 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, |
3985 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), | 3989 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), |
3986 true, false, true); | 3990 true, false, true); |
(...skipping 937 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4924 | 4928 |
4925 LayerImpl* child = AddChildToRoot<LayerImpl>(); | 4929 LayerImpl* child = AddChildToRoot<LayerImpl>(); |
4926 child->SetDrawsContent(true); | 4930 child->SetDrawsContent(true); |
4927 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(), | 4931 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(), |
4928 gfx::PointF(2.f, 2.f), gfx::Size(10, 10), false, | 4932 gfx::PointF(2.f, 2.f), gfx::Size(10, 10), false, |
4929 true, true); | 4933 true, true); |
4930 | 4934 |
4931 gfx::Transform replica_transform; | 4935 gfx::Transform replica_transform; |
4932 replica_transform.Scale(1.0, -1.0); | 4936 replica_transform.Scale(1.0, -1.0); |
4933 | 4937 |
4934 scoped_ptr<LayerImpl> replica = | 4938 std::unique_ptr<LayerImpl> replica = |
4935 LayerImpl::Create(host_impl()->active_tree(), 7); | 4939 LayerImpl::Create(host_impl()->active_tree(), 7); |
4936 SetLayerPropertiesForTesting(replica.get(), replica_transform, gfx::Point3F(), | 4940 SetLayerPropertiesForTesting(replica.get(), replica_transform, gfx::Point3F(), |
4937 gfx::PointF(2.f, 2.f), gfx::Size(10, 10), false, | 4941 gfx::PointF(2.f, 2.f), gfx::Size(10, 10), false, |
4938 true, false); | 4942 true, false); |
4939 // We need to set parent on replica layer for property tree building. | 4943 // We need to set parent on replica layer for property tree building. |
4940 replica->SetParent(child); | 4944 replica->SetParent(child); |
4941 child->SetReplicaLayer(std::move(replica)); | 4945 child->SetReplicaLayer(std::move(replica)); |
4942 | 4946 |
4943 // This layer should end up in the same surface as child, with the same draw | 4947 // This layer should end up in the same surface as child, with the same draw |
4944 // and screen space transforms. | 4948 // and screen space transforms. |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5037 true); | 5041 true); |
5038 | 5042 |
5039 LayerImpl* child = AddChildToRoot<LayerImpl>(); | 5043 LayerImpl* child = AddChildToRoot<LayerImpl>(); |
5040 child->SetDrawsContent(true); | 5044 child->SetDrawsContent(true); |
5041 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(), | 5045 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(), |
5042 gfx::PointF(), gfx::Size(13, 11), false, true, | 5046 gfx::PointF(), gfx::Size(13, 11), false, true, |
5043 true); | 5047 true); |
5044 | 5048 |
5045 gfx::Transform replica_transform; | 5049 gfx::Transform replica_transform; |
5046 replica_transform.Scale(1.0, -1.0); | 5050 replica_transform.Scale(1.0, -1.0); |
5047 scoped_ptr<LayerImpl> replica = | 5051 std::unique_ptr<LayerImpl> replica = |
5048 LayerImpl::Create(host_impl()->active_tree(), 7); | 5052 LayerImpl::Create(host_impl()->active_tree(), 7); |
5049 SetLayerPropertiesForTesting(replica.get(), replica_transform, gfx::Point3F(), | 5053 SetLayerPropertiesForTesting(replica.get(), replica_transform, gfx::Point3F(), |
5050 gfx::PointF(), gfx::Size(13, 11), false, true, | 5054 gfx::PointF(), gfx::Size(13, 11), false, true, |
5051 false); | 5055 false); |
5052 child->SetReplicaLayer(std::move(replica)); | 5056 child->SetReplicaLayer(std::move(replica)); |
5053 | 5057 |
5054 float device_scale_factor = 1.7f; | 5058 float device_scale_factor = 1.7f; |
5055 ExecuteCalculateDrawProperties(parent, device_scale_factor); | 5059 ExecuteCalculateDrawProperties(parent, device_scale_factor); |
5056 | 5060 |
5057 // We should have two render surfaces. The root's render surface and child's | 5061 // We should have two render surfaces. The root's render surface and child's |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5142 EXPECT_FALSE(child->has_render_surface()); | 5146 EXPECT_FALSE(child->has_render_surface()); |
5143 } | 5147 } |
5144 | 5148 |
5145 TEST_F(LayerTreeHostCommonTest, OpacityAnimatingOnPendingTree) { | 5149 TEST_F(LayerTreeHostCommonTest, OpacityAnimatingOnPendingTree) { |
5146 FakeImplTaskRunnerProvider task_runner_provider; | 5150 FakeImplTaskRunnerProvider task_runner_provider; |
5147 TestSharedBitmapManager shared_bitmap_manager; | 5151 TestSharedBitmapManager shared_bitmap_manager; |
5148 TestTaskGraphRunner task_graph_runner; | 5152 TestTaskGraphRunner task_graph_runner; |
5149 FakeLayerTreeHostImpl host_impl(host()->settings(), &task_runner_provider, | 5153 FakeLayerTreeHostImpl host_impl(host()->settings(), &task_runner_provider, |
5150 &shared_bitmap_manager, &task_graph_runner); | 5154 &shared_bitmap_manager, &task_graph_runner); |
5151 host_impl.CreatePendingTree(); | 5155 host_impl.CreatePendingTree(); |
5152 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 5156 std::unique_ptr<LayerImpl> root = |
| 5157 LayerImpl::Create(host_impl.pending_tree(), 1); |
5153 | 5158 |
5154 const gfx::Transform identity_matrix; | 5159 const gfx::Transform identity_matrix; |
5155 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 5160 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
5156 gfx::PointF(), gfx::Size(100, 100), true, false, | 5161 gfx::PointF(), gfx::Size(100, 100), true, false, |
5157 false); | 5162 false); |
5158 root->SetDrawsContent(true); | 5163 root->SetDrawsContent(true); |
5159 | 5164 |
5160 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.pending_tree(), 2); | 5165 std::unique_ptr<LayerImpl> child = |
| 5166 LayerImpl::Create(host_impl.pending_tree(), 2); |
5161 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), | 5167 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), |
5162 gfx::PointF(), gfx::Size(50, 50), true, false, | 5168 gfx::PointF(), gfx::Size(50, 50), true, false, |
5163 false); | 5169 false); |
5164 child->SetDrawsContent(true); | 5170 child->SetDrawsContent(true); |
5165 child->SetOpacity(0.0f); | 5171 child->SetOpacity(0.0f); |
5166 | 5172 |
5167 // Add opacity animation. | 5173 // Add opacity animation. |
5168 scoped_refptr<AnimationTimeline> timeline = | 5174 scoped_refptr<AnimationTimeline> timeline = |
5169 AnimationTimeline::Create(AnimationIdProvider::NextTimelineId()); | 5175 AnimationTimeline::Create(AnimationIdProvider::NextTimelineId()); |
5170 host_impl.animation_host()->AddAnimationTimeline(timeline); | 5176 host_impl.animation_host()->AddAnimationTimeline(timeline); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5245 | 5251 |
5246 protected: | 5252 protected: |
5247 void SetUp() override { | 5253 void SetUp() override { |
5248 timeline_ = | 5254 timeline_ = |
5249 AnimationTimeline::Create(AnimationIdProvider::NextTimelineId()); | 5255 AnimationTimeline::Create(AnimationIdProvider::NextTimelineId()); |
5250 host_impl_.animation_host()->AddAnimationTimeline(timeline_); | 5256 host_impl_.animation_host()->AddAnimationTimeline(timeline_); |
5251 | 5257 |
5252 can_use_lcd_text_ = std::tr1::get<0>(GetParam()); | 5258 can_use_lcd_text_ = std::tr1::get<0>(GetParam()); |
5253 layers_always_allowed_lcd_text_ = std::tr1::get<1>(GetParam()); | 5259 layers_always_allowed_lcd_text_ = std::tr1::get<1>(GetParam()); |
5254 | 5260 |
5255 scoped_ptr<LayerImpl> root_ptr = | 5261 std::unique_ptr<LayerImpl> root_ptr = |
5256 LayerImpl::Create(host_impl_.active_tree(), 1); | 5262 LayerImpl::Create(host_impl_.active_tree(), 1); |
5257 scoped_ptr<LayerImpl> child_ptr = | 5263 std::unique_ptr<LayerImpl> child_ptr = |
5258 LayerImpl::Create(host_impl_.active_tree(), 2); | 5264 LayerImpl::Create(host_impl_.active_tree(), 2); |
5259 scoped_ptr<LayerImpl> grand_child_ptr = | 5265 std::unique_ptr<LayerImpl> grand_child_ptr = |
5260 LayerImpl::Create(host_impl_.active_tree(), 3); | 5266 LayerImpl::Create(host_impl_.active_tree(), 3); |
5261 | 5267 |
5262 // Stash raw pointers to look at later. | 5268 // Stash raw pointers to look at later. |
5263 root_ = root_ptr.get(); | 5269 root_ = root_ptr.get(); |
5264 child_ = child_ptr.get(); | 5270 child_ = child_ptr.get(); |
5265 grand_child_ = grand_child_ptr.get(); | 5271 grand_child_ = grand_child_ptr.get(); |
5266 | 5272 |
5267 child_->AddChild(std::move(grand_child_ptr)); | 5273 child_->AddChild(std::move(grand_child_ptr)); |
5268 root_->AddChild(std::move(child_ptr)); | 5274 root_->AddChild(std::move(child_ptr)); |
5269 host_impl_.active_tree()->SetRootLayer(std::move(root_ptr)); | 5275 host_impl_.active_tree()->SetRootLayer(std::move(root_ptr)); |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5461 | 5467 |
5462 TEST_F(LayerTreeHostCommonTest, SubtreeHidden_SingleLayerImpl) { | 5468 TEST_F(LayerTreeHostCommonTest, SubtreeHidden_SingleLayerImpl) { |
5463 FakeImplTaskRunnerProvider task_runner_provider; | 5469 FakeImplTaskRunnerProvider task_runner_provider; |
5464 TestSharedBitmapManager shared_bitmap_manager; | 5470 TestSharedBitmapManager shared_bitmap_manager; |
5465 TestTaskGraphRunner task_graph_runner; | 5471 TestTaskGraphRunner task_graph_runner; |
5466 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 5472 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
5467 &task_graph_runner); | 5473 &task_graph_runner); |
5468 host_impl.CreatePendingTree(); | 5474 host_impl.CreatePendingTree(); |
5469 const gfx::Transform identity_matrix; | 5475 const gfx::Transform identity_matrix; |
5470 | 5476 |
5471 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 5477 std::unique_ptr<LayerImpl> root = |
| 5478 LayerImpl::Create(host_impl.pending_tree(), 1); |
5472 LayerImpl* root_layer = root.get(); | 5479 LayerImpl* root_layer = root.get(); |
5473 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 5480 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
5474 gfx::PointF(), gfx::Size(50, 50), true, false, | 5481 gfx::PointF(), gfx::Size(50, 50), true, false, |
5475 false); | 5482 false); |
5476 root->SetDrawsContent(true); | 5483 root->SetDrawsContent(true); |
5477 | 5484 |
5478 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.pending_tree(), 2); | 5485 std::unique_ptr<LayerImpl> child = |
| 5486 LayerImpl::Create(host_impl.pending_tree(), 2); |
5479 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), | 5487 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), |
5480 gfx::PointF(), gfx::Size(40, 40), true, false, | 5488 gfx::PointF(), gfx::Size(40, 40), true, false, |
5481 false); | 5489 false); |
5482 child->SetDrawsContent(true); | 5490 child->SetDrawsContent(true); |
5483 | 5491 |
5484 scoped_ptr<LayerImpl> grand_child = | 5492 std::unique_ptr<LayerImpl> grand_child = |
5485 LayerImpl::Create(host_impl.pending_tree(), 3); | 5493 LayerImpl::Create(host_impl.pending_tree(), 3); |
5486 SetLayerPropertiesForTesting(grand_child.get(), identity_matrix, | 5494 SetLayerPropertiesForTesting(grand_child.get(), identity_matrix, |
5487 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 5495 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
5488 true, false, false); | 5496 true, false, false); |
5489 grand_child->SetDrawsContent(true); | 5497 grand_child->SetDrawsContent(true); |
5490 grand_child->SetHideLayerAndSubtree(true); | 5498 grand_child->SetHideLayerAndSubtree(true); |
5491 | 5499 |
5492 child->AddChild(std::move(grand_child)); | 5500 child->AddChild(std::move(grand_child)); |
5493 root->AddChild(std::move(child)); | 5501 root->AddChild(std::move(child)); |
5494 root->SetHasRenderSurface(true); | 5502 root->SetHasRenderSurface(true); |
(...skipping 17 matching lines...) Expand all Loading... |
5512 | 5520 |
5513 TEST_F(LayerTreeHostCommonTest, SubtreeHidden_TwoLayersImpl) { | 5521 TEST_F(LayerTreeHostCommonTest, SubtreeHidden_TwoLayersImpl) { |
5514 FakeImplTaskRunnerProvider task_runner_provider; | 5522 FakeImplTaskRunnerProvider task_runner_provider; |
5515 TestSharedBitmapManager shared_bitmap_manager; | 5523 TestSharedBitmapManager shared_bitmap_manager; |
5516 TestTaskGraphRunner task_graph_runner; | 5524 TestTaskGraphRunner task_graph_runner; |
5517 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 5525 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
5518 &task_graph_runner); | 5526 &task_graph_runner); |
5519 host_impl.CreatePendingTree(); | 5527 host_impl.CreatePendingTree(); |
5520 const gfx::Transform identity_matrix; | 5528 const gfx::Transform identity_matrix; |
5521 | 5529 |
5522 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 5530 std::unique_ptr<LayerImpl> root = |
| 5531 LayerImpl::Create(host_impl.pending_tree(), 1); |
5523 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 5532 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
5524 gfx::PointF(), gfx::Size(50, 50), true, false, | 5533 gfx::PointF(), gfx::Size(50, 50), true, false, |
5525 true); | 5534 true); |
5526 root->SetDrawsContent(true); | 5535 root->SetDrawsContent(true); |
5527 LayerImpl* root_layer = root.get(); | 5536 LayerImpl* root_layer = root.get(); |
5528 | 5537 |
5529 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.pending_tree(), 2); | 5538 std::unique_ptr<LayerImpl> child = |
| 5539 LayerImpl::Create(host_impl.pending_tree(), 2); |
5530 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), | 5540 SetLayerPropertiesForTesting(child.get(), identity_matrix, gfx::Point3F(), |
5531 gfx::PointF(), gfx::Size(40, 40), true, false, | 5541 gfx::PointF(), gfx::Size(40, 40), true, false, |
5532 false); | 5542 false); |
5533 child->SetDrawsContent(true); | 5543 child->SetDrawsContent(true); |
5534 child->SetHideLayerAndSubtree(true); | 5544 child->SetHideLayerAndSubtree(true); |
5535 | 5545 |
5536 scoped_ptr<LayerImpl> grand_child = | 5546 std::unique_ptr<LayerImpl> grand_child = |
5537 LayerImpl::Create(host_impl.pending_tree(), 3); | 5547 LayerImpl::Create(host_impl.pending_tree(), 3); |
5538 SetLayerPropertiesForTesting(grand_child.get(), identity_matrix, | 5548 SetLayerPropertiesForTesting(grand_child.get(), identity_matrix, |
5539 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 5549 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
5540 true, false, false); | 5550 true, false, false); |
5541 grand_child->SetDrawsContent(true); | 5551 grand_child->SetDrawsContent(true); |
5542 | 5552 |
5543 child->AddChild(std::move(grand_child)); | 5553 child->AddChild(std::move(grand_child)); |
5544 root->AddChild(std::move(child)); | 5554 root->AddChild(std::move(child)); |
5545 host_impl.pending_tree()->SetRootLayer(std::move(root)); | 5555 host_impl.pending_tree()->SetRootLayer(std::move(root)); |
5546 | 5556 |
5547 LayerImplList render_surface_layer_list; | 5557 LayerImplList render_surface_layer_list; |
5548 root_layer->layer_tree_impl()->IncrementRenderSurfaceListIdForTesting(); | 5558 root_layer->layer_tree_impl()->IncrementRenderSurfaceListIdForTesting(); |
5549 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( | 5559 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( |
5550 root_layer, root_layer->bounds(), &render_surface_layer_list, | 5560 root_layer, root_layer->bounds(), &render_surface_layer_list, |
5551 root_layer->layer_tree_impl()->current_render_surface_list_id()); | 5561 root_layer->layer_tree_impl()->current_render_surface_list_id()); |
5552 inputs.can_adjust_raster_scales = true; | 5562 inputs.can_adjust_raster_scales = true; |
5553 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 5563 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
5554 | 5564 |
5555 // We should have one render surface and one layers. The child has | 5565 // We should have one render surface and one layers. The child has |
5556 // hidden itself and the grand child. | 5566 // hidden itself and the grand child. |
5557 ASSERT_EQ(1u, render_surface_layer_list.size()); | 5567 ASSERT_EQ(1u, render_surface_layer_list.size()); |
5558 ASSERT_EQ(1u, root_layer->render_surface()->layer_list().size()); | 5568 ASSERT_EQ(1u, root_layer->render_surface()->layer_list().size()); |
5559 EXPECT_EQ(1, root_layer->render_surface()->layer_list().at(0)->id()); | 5569 EXPECT_EQ(1, root_layer->render_surface()->layer_list().at(0)->id()); |
5560 } | 5570 } |
5561 | 5571 |
5562 void EmptyCopyOutputCallback(scoped_ptr<CopyOutputResult> result) {} | 5572 void EmptyCopyOutputCallback(std::unique_ptr<CopyOutputResult> result) {} |
5563 | 5573 |
5564 TEST_F(LayerTreeHostCommonTest, SubtreeHiddenWithCopyRequest) { | 5574 TEST_F(LayerTreeHostCommonTest, SubtreeHiddenWithCopyRequest) { |
5565 FakeImplTaskRunnerProvider task_runner_provider; | 5575 FakeImplTaskRunnerProvider task_runner_provider; |
5566 TestSharedBitmapManager shared_bitmap_manager; | 5576 TestSharedBitmapManager shared_bitmap_manager; |
5567 TestTaskGraphRunner task_graph_runner; | 5577 TestTaskGraphRunner task_graph_runner; |
5568 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 5578 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
5569 &task_graph_runner); | 5579 &task_graph_runner); |
5570 host_impl.CreatePendingTree(); | 5580 host_impl.CreatePendingTree(); |
5571 const gfx::Transform identity_matrix; | 5581 const gfx::Transform identity_matrix; |
5572 | 5582 |
5573 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 5583 std::unique_ptr<LayerImpl> root = |
| 5584 LayerImpl::Create(host_impl.pending_tree(), 1); |
5574 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 5585 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
5575 gfx::PointF(), gfx::Size(50, 50), true, false, | 5586 gfx::PointF(), gfx::Size(50, 50), true, false, |
5576 true); | 5587 true); |
5577 root->SetDrawsContent(true); | 5588 root->SetDrawsContent(true); |
5578 LayerImpl* root_layer = root.get(); | 5589 LayerImpl* root_layer = root.get(); |
5579 | 5590 |
5580 scoped_ptr<LayerImpl> copy_grand_parent = | 5591 std::unique_ptr<LayerImpl> copy_grand_parent = |
5581 LayerImpl::Create(host_impl.pending_tree(), 2); | 5592 LayerImpl::Create(host_impl.pending_tree(), 2); |
5582 SetLayerPropertiesForTesting(copy_grand_parent.get(), identity_matrix, | 5593 SetLayerPropertiesForTesting(copy_grand_parent.get(), identity_matrix, |
5583 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), | 5594 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), |
5584 true, false, false); | 5595 true, false, false); |
5585 copy_grand_parent->SetDrawsContent(true); | 5596 copy_grand_parent->SetDrawsContent(true); |
5586 LayerImpl* copy_grand_parent_layer = copy_grand_parent.get(); | 5597 LayerImpl* copy_grand_parent_layer = copy_grand_parent.get(); |
5587 | 5598 |
5588 scoped_ptr<LayerImpl> copy_parent = | 5599 std::unique_ptr<LayerImpl> copy_parent = |
5589 LayerImpl::Create(host_impl.pending_tree(), 3); | 5600 LayerImpl::Create(host_impl.pending_tree(), 3); |
5590 SetLayerPropertiesForTesting(copy_parent.get(), identity_matrix, | 5601 SetLayerPropertiesForTesting(copy_parent.get(), identity_matrix, |
5591 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 5602 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
5592 true, false, true); | 5603 true, false, true); |
5593 copy_parent->SetDrawsContent(true); | 5604 copy_parent->SetDrawsContent(true); |
5594 LayerImpl* copy_parent_layer = copy_parent.get(); | 5605 LayerImpl* copy_parent_layer = copy_parent.get(); |
5595 | 5606 |
5596 scoped_ptr<LayerImpl> copy_request = | 5607 std::unique_ptr<LayerImpl> copy_request = |
5597 LayerImpl::Create(host_impl.pending_tree(), 4); | 5608 LayerImpl::Create(host_impl.pending_tree(), 4); |
5598 SetLayerPropertiesForTesting(copy_request.get(), identity_matrix, | 5609 SetLayerPropertiesForTesting(copy_request.get(), identity_matrix, |
5599 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), | 5610 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), |
5600 true, false, true); | 5611 true, false, true); |
5601 copy_request->SetDrawsContent(true); | 5612 copy_request->SetDrawsContent(true); |
5602 LayerImpl* copy_layer = copy_request.get(); | 5613 LayerImpl* copy_layer = copy_request.get(); |
5603 | 5614 |
5604 scoped_ptr<LayerImpl> copy_child = | 5615 std::unique_ptr<LayerImpl> copy_child = |
5605 LayerImpl::Create(host_impl.pending_tree(), 5); | 5616 LayerImpl::Create(host_impl.pending_tree(), 5); |
5606 SetLayerPropertiesForTesting(copy_child.get(), identity_matrix, | 5617 SetLayerPropertiesForTesting(copy_child.get(), identity_matrix, |
5607 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), | 5618 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), |
5608 true, false, false); | 5619 true, false, false); |
5609 copy_child->SetDrawsContent(true); | 5620 copy_child->SetDrawsContent(true); |
5610 LayerImpl* copy_child_layer = copy_child.get(); | 5621 LayerImpl* copy_child_layer = copy_child.get(); |
5611 | 5622 |
5612 scoped_ptr<LayerImpl> copy_grand_child = | 5623 std::unique_ptr<LayerImpl> copy_grand_child = |
5613 LayerImpl::Create(host_impl.pending_tree(), 6); | 5624 LayerImpl::Create(host_impl.pending_tree(), 6); |
5614 SetLayerPropertiesForTesting(copy_grand_child.get(), identity_matrix, | 5625 SetLayerPropertiesForTesting(copy_grand_child.get(), identity_matrix, |
5615 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), | 5626 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), |
5616 true, false, false); | 5627 true, false, false); |
5617 copy_child->SetDrawsContent(true); | 5628 copy_child->SetDrawsContent(true); |
5618 LayerImpl* copy_grand_child_layer = copy_grand_child.get(); | 5629 LayerImpl* copy_grand_child_layer = copy_grand_child.get(); |
5619 | 5630 |
5620 scoped_ptr<LayerImpl> copy_grand_parent_sibling_before = | 5631 std::unique_ptr<LayerImpl> copy_grand_parent_sibling_before = |
5621 LayerImpl::Create(host_impl.pending_tree(), 7); | 5632 LayerImpl::Create(host_impl.pending_tree(), 7); |
5622 SetLayerPropertiesForTesting(copy_grand_parent_sibling_before.get(), | 5633 SetLayerPropertiesForTesting(copy_grand_parent_sibling_before.get(), |
5623 identity_matrix, gfx::Point3F(), gfx::PointF(), | 5634 identity_matrix, gfx::Point3F(), gfx::PointF(), |
5624 gfx::Size(40, 40), true, false, false); | 5635 gfx::Size(40, 40), true, false, false); |
5625 copy_grand_parent_sibling_before->SetDrawsContent(true); | 5636 copy_grand_parent_sibling_before->SetDrawsContent(true); |
5626 LayerImpl* copy_grand_parent_sibling_before_layer = | 5637 LayerImpl* copy_grand_parent_sibling_before_layer = |
5627 copy_grand_parent_sibling_before.get(); | 5638 copy_grand_parent_sibling_before.get(); |
5628 | 5639 |
5629 scoped_ptr<LayerImpl> copy_grand_parent_sibling_after = | 5640 std::unique_ptr<LayerImpl> copy_grand_parent_sibling_after = |
5630 LayerImpl::Create(host_impl.pending_tree(), 8); | 5641 LayerImpl::Create(host_impl.pending_tree(), 8); |
5631 SetLayerPropertiesForTesting(copy_grand_parent_sibling_after.get(), | 5642 SetLayerPropertiesForTesting(copy_grand_parent_sibling_after.get(), |
5632 identity_matrix, gfx::Point3F(), gfx::PointF(), | 5643 identity_matrix, gfx::Point3F(), gfx::PointF(), |
5633 gfx::Size(40, 40), true, false, false); | 5644 gfx::Size(40, 40), true, false, false); |
5634 copy_grand_parent_sibling_after->SetDrawsContent(true); | 5645 copy_grand_parent_sibling_after->SetDrawsContent(true); |
5635 LayerImpl* copy_grand_parent_sibling_after_layer = | 5646 LayerImpl* copy_grand_parent_sibling_after_layer = |
5636 copy_grand_parent_sibling_after.get(); | 5647 copy_grand_parent_sibling_after.get(); |
5637 | 5648 |
5638 copy_child->AddChild(std::move(copy_grand_child)); | 5649 copy_child->AddChild(std::move(copy_grand_child)); |
5639 copy_request->AddChild(std::move(copy_child)); | 5650 copy_request->AddChild(std::move(copy_child)); |
5640 copy_parent->AddChild(std::move(copy_request)); | 5651 copy_parent->AddChild(std::move(copy_request)); |
5641 copy_grand_parent->AddChild(std::move(copy_parent)); | 5652 copy_grand_parent->AddChild(std::move(copy_parent)); |
5642 root->AddChild(std::move(copy_grand_parent_sibling_before)); | 5653 root->AddChild(std::move(copy_grand_parent_sibling_before)); |
5643 root->AddChild(std::move(copy_grand_parent)); | 5654 root->AddChild(std::move(copy_grand_parent)); |
5644 root->AddChild(std::move(copy_grand_parent_sibling_after)); | 5655 root->AddChild(std::move(copy_grand_parent_sibling_after)); |
5645 host_impl.pending_tree()->SetRootLayer(std::move(root)); | 5656 host_impl.pending_tree()->SetRootLayer(std::move(root)); |
5646 | 5657 |
5647 // Hide the copy_grand_parent and its subtree. But make a copy request in that | 5658 // Hide the copy_grand_parent and its subtree. But make a copy request in that |
5648 // hidden subtree on copy_layer. Also hide the copy grand child and its | 5659 // hidden subtree on copy_layer. Also hide the copy grand child and its |
5649 // subtree. | 5660 // subtree. |
5650 copy_grand_parent_layer->SetHideLayerAndSubtree(true); | 5661 copy_grand_parent_layer->SetHideLayerAndSubtree(true); |
5651 copy_grand_parent_sibling_before_layer->SetHideLayerAndSubtree(true); | 5662 copy_grand_parent_sibling_before_layer->SetHideLayerAndSubtree(true); |
5652 copy_grand_parent_sibling_after_layer->SetHideLayerAndSubtree(true); | 5663 copy_grand_parent_sibling_after_layer->SetHideLayerAndSubtree(true); |
5653 copy_grand_child_layer->SetHideLayerAndSubtree(true); | 5664 copy_grand_child_layer->SetHideLayerAndSubtree(true); |
5654 | 5665 |
5655 std::vector<scoped_ptr<CopyOutputRequest>> copy_requests; | 5666 std::vector<std::unique_ptr<CopyOutputRequest>> copy_requests; |
5656 copy_requests.push_back( | 5667 copy_requests.push_back( |
5657 CopyOutputRequest::CreateRequest(base::Bind(&EmptyCopyOutputCallback))); | 5668 CopyOutputRequest::CreateRequest(base::Bind(&EmptyCopyOutputCallback))); |
5658 copy_layer->PassCopyRequests(©_requests); | 5669 copy_layer->PassCopyRequests(©_requests); |
5659 EXPECT_TRUE(copy_layer->HasCopyRequest()); | 5670 EXPECT_TRUE(copy_layer->HasCopyRequest()); |
5660 | 5671 |
5661 LayerImplList render_surface_layer_list; | 5672 LayerImplList render_surface_layer_list; |
5662 root_layer->layer_tree_impl()->IncrementRenderSurfaceListIdForTesting(); | 5673 root_layer->layer_tree_impl()->IncrementRenderSurfaceListIdForTesting(); |
5663 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( | 5674 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( |
5664 root_layer, root_layer->bounds(), &render_surface_layer_list, | 5675 root_layer, root_layer->bounds(), &render_surface_layer_list, |
5665 root_layer->layer_tree_impl()->current_render_surface_list_id()); | 5676 root_layer->layer_tree_impl()->current_render_surface_list_id()); |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5725 | 5736 |
5726 TEST_F(LayerTreeHostCommonTest, ClippedOutCopyRequest) { | 5737 TEST_F(LayerTreeHostCommonTest, ClippedOutCopyRequest) { |
5727 FakeImplTaskRunnerProvider task_runner_provider; | 5738 FakeImplTaskRunnerProvider task_runner_provider; |
5728 TestSharedBitmapManager shared_bitmap_manager; | 5739 TestSharedBitmapManager shared_bitmap_manager; |
5729 TestTaskGraphRunner task_graph_runner; | 5740 TestTaskGraphRunner task_graph_runner; |
5730 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 5741 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
5731 &task_graph_runner); | 5742 &task_graph_runner); |
5732 host_impl.CreatePendingTree(); | 5743 host_impl.CreatePendingTree(); |
5733 const gfx::Transform identity_matrix; | 5744 const gfx::Transform identity_matrix; |
5734 | 5745 |
5735 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 5746 std::unique_ptr<LayerImpl> root = |
| 5747 LayerImpl::Create(host_impl.pending_tree(), 1); |
5736 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), | 5748 SetLayerPropertiesForTesting(root.get(), identity_matrix, gfx::Point3F(), |
5737 gfx::PointF(), gfx::Size(50, 50), true, false, | 5749 gfx::PointF(), gfx::Size(50, 50), true, false, |
5738 true); | 5750 true); |
5739 root->SetDrawsContent(true); | 5751 root->SetDrawsContent(true); |
5740 | 5752 |
5741 scoped_ptr<LayerImpl> copy_parent = | 5753 std::unique_ptr<LayerImpl> copy_parent = |
5742 LayerImpl::Create(host_impl.pending_tree(), 2); | 5754 LayerImpl::Create(host_impl.pending_tree(), 2); |
5743 SetLayerPropertiesForTesting(copy_parent.get(), identity_matrix, | 5755 SetLayerPropertiesForTesting(copy_parent.get(), identity_matrix, |
5744 gfx::Point3F(), gfx::PointF(), gfx::Size(), true, | 5756 gfx::Point3F(), gfx::PointF(), gfx::Size(), true, |
5745 false, false); | 5757 false, false); |
5746 copy_parent->SetDrawsContent(true); | 5758 copy_parent->SetDrawsContent(true); |
5747 copy_parent->SetMasksToBounds(true); | 5759 copy_parent->SetMasksToBounds(true); |
5748 | 5760 |
5749 scoped_ptr<LayerImpl> copy_layer = | 5761 std::unique_ptr<LayerImpl> copy_layer = |
5750 LayerImpl::Create(host_impl.pending_tree(), 3); | 5762 LayerImpl::Create(host_impl.pending_tree(), 3); |
5751 SetLayerPropertiesForTesting(copy_layer.get(), identity_matrix, | 5763 SetLayerPropertiesForTesting(copy_layer.get(), identity_matrix, |
5752 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 5764 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
5753 true, false, true); | 5765 true, false, true); |
5754 copy_layer->SetDrawsContent(true); | 5766 copy_layer->SetDrawsContent(true); |
5755 | 5767 |
5756 scoped_ptr<LayerImpl> copy_child = | 5768 std::unique_ptr<LayerImpl> copy_child = |
5757 LayerImpl::Create(host_impl.pending_tree(), 4); | 5769 LayerImpl::Create(host_impl.pending_tree(), 4); |
5758 SetLayerPropertiesForTesting(copy_child.get(), identity_matrix, | 5770 SetLayerPropertiesForTesting(copy_child.get(), identity_matrix, |
5759 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), | 5771 gfx::Point3F(), gfx::PointF(), gfx::Size(20, 20), |
5760 true, false, false); | 5772 true, false, false); |
5761 copy_child->SetDrawsContent(true); | 5773 copy_child->SetDrawsContent(true); |
5762 | 5774 |
5763 std::vector<scoped_ptr<CopyOutputRequest>> copy_requests; | 5775 std::vector<std::unique_ptr<CopyOutputRequest>> copy_requests; |
5764 copy_requests.push_back( | 5776 copy_requests.push_back( |
5765 CopyOutputRequest::CreateRequest(base::Bind(&EmptyCopyOutputCallback))); | 5777 CopyOutputRequest::CreateRequest(base::Bind(&EmptyCopyOutputCallback))); |
5766 copy_layer->PassCopyRequests(©_requests); | 5778 copy_layer->PassCopyRequests(©_requests); |
5767 EXPECT_TRUE(copy_layer->HasCopyRequest()); | 5779 EXPECT_TRUE(copy_layer->HasCopyRequest()); |
5768 | 5780 |
5769 copy_layer->AddChild(std::move(copy_child)); | 5781 copy_layer->AddChild(std::move(copy_child)); |
5770 copy_parent->AddChild(std::move(copy_layer)); | 5782 copy_parent->AddChild(std::move(copy_layer)); |
5771 root->AddChild(std::move(copy_parent)); | 5783 root->AddChild(std::move(copy_parent)); |
5772 | 5784 |
5773 LayerImplList render_surface_layer_list; | 5785 LayerImplList render_surface_layer_list; |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5830 // inherit the right clip rect. | 5842 // inherit the right clip rect. |
5831 LayerImpl* root = root_layer(); | 5843 LayerImpl* root = root_layer(); |
5832 LayerImpl* render_surface = AddChildToRoot<LayerImpl>(); | 5844 LayerImpl* render_surface = AddChildToRoot<LayerImpl>(); |
5833 LayerImpl* clip_parent = AddChild<LayerImpl>(render_surface); | 5845 LayerImpl* clip_parent = AddChild<LayerImpl>(render_surface); |
5834 clip_parent->SetDrawsContent(true); | 5846 clip_parent->SetDrawsContent(true); |
5835 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); | 5847 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); |
5836 intervening->SetDrawsContent(true); | 5848 intervening->SetDrawsContent(true); |
5837 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); | 5849 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); |
5838 clip_child->SetDrawsContent(true); | 5850 clip_child->SetDrawsContent(true); |
5839 clip_child->SetClipParent(clip_parent); | 5851 clip_child->SetClipParent(clip_parent); |
5840 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 5852 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
5841 clip_children->insert(clip_child); | 5853 clip_children->insert(clip_child); |
5842 clip_parent->SetClipChildren(clip_children.release()); | 5854 clip_parent->SetClipChildren(clip_children.release()); |
5843 | 5855 |
5844 intervening->SetMasksToBounds(true); | 5856 intervening->SetMasksToBounds(true); |
5845 clip_parent->SetMasksToBounds(true); | 5857 clip_parent->SetMasksToBounds(true); |
5846 | 5858 |
5847 gfx::Transform scale_transform; | 5859 gfx::Transform scale_transform; |
5848 scale_transform.Scale(2, 2); | 5860 scale_transform.Scale(2, 2); |
5849 | 5861 |
5850 gfx::Transform identity_transform; | 5862 gfx::Transform identity_transform; |
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6080 // | 6092 // |
6081 LayerImpl* root = root_layer(); | 6093 LayerImpl* root = root_layer(); |
6082 LayerImpl* clip_parent = AddChild<LayerImpl>(root); | 6094 LayerImpl* clip_parent = AddChild<LayerImpl>(root); |
6083 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); | 6095 LayerImpl* intervening = AddChild<LayerImpl>(clip_parent); |
6084 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); | 6096 LayerImpl* clip_child = AddChild<LayerImpl>(intervening); |
6085 LayerImpl* child = AddChild<LayerImpl>(clip_child); | 6097 LayerImpl* child = AddChild<LayerImpl>(clip_child); |
6086 clip_child->SetDrawsContent(true); | 6098 clip_child->SetDrawsContent(true); |
6087 child->SetDrawsContent(true); | 6099 child->SetDrawsContent(true); |
6088 | 6100 |
6089 clip_child->SetClipParent(clip_parent); | 6101 clip_child->SetClipParent(clip_parent); |
6090 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 6102 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
6091 clip_children->insert(clip_child); | 6103 clip_children->insert(clip_child); |
6092 clip_parent->SetClipChildren(clip_children.release()); | 6104 clip_parent->SetClipChildren(clip_children.release()); |
6093 | 6105 |
6094 intervening->SetMasksToBounds(true); | 6106 intervening->SetMasksToBounds(true); |
6095 clip_parent->SetMasksToBounds(true); | 6107 clip_parent->SetMasksToBounds(true); |
6096 | 6108 |
6097 gfx::Transform identity_transform; | 6109 gfx::Transform identity_transform; |
6098 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6110 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
6099 gfx::PointF(), gfx::Size(50, 50), true, false, | 6111 gfx::PointF(), gfx::Size(50, 50), true, false, |
6100 true); | 6112 true); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6141 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); | 6153 LayerImpl* render_surface1 = AddChild<LayerImpl>(clip_parent); |
6142 render_surface1->SetDrawsContent(true); | 6154 render_surface1->SetDrawsContent(true); |
6143 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); | 6155 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface1); |
6144 clip_child->SetDrawsContent(true); | 6156 clip_child->SetDrawsContent(true); |
6145 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_parent); | 6157 LayerImpl* render_surface2 = AddChild<LayerImpl>(clip_parent); |
6146 render_surface2->SetDrawsContent(true); | 6158 render_surface2->SetDrawsContent(true); |
6147 LayerImpl* non_clip_child = AddChild<LayerImpl>(render_surface2); | 6159 LayerImpl* non_clip_child = AddChild<LayerImpl>(render_surface2); |
6148 non_clip_child->SetDrawsContent(true); | 6160 non_clip_child->SetDrawsContent(true); |
6149 | 6161 |
6150 clip_child->SetClipParent(clip_parent); | 6162 clip_child->SetClipParent(clip_parent); |
6151 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 6163 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
6152 clip_children->insert(clip_child); | 6164 clip_children->insert(clip_child); |
6153 clip_parent->SetClipChildren(clip_children.release()); | 6165 clip_parent->SetClipChildren(clip_children.release()); |
6154 | 6166 |
6155 clip_parent->SetMasksToBounds(true); | 6167 clip_parent->SetMasksToBounds(true); |
6156 render_surface1->SetMasksToBounds(true); | 6168 render_surface1->SetMasksToBounds(true); |
6157 | 6169 |
6158 gfx::Transform identity_transform; | 6170 gfx::Transform identity_transform; |
6159 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6171 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
6160 gfx::PointF(), gfx::Size(15, 15), true, false, | 6172 gfx::PointF(), gfx::Size(15, 15), true, false, |
6161 true); | 6173 true); |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6249 EXPECT_FALSE(child3->has_render_surface()); | 6261 EXPECT_FALSE(child3->has_render_surface()); |
6250 } | 6262 } |
6251 | 6263 |
6252 TEST_F(LayerTreeHostCommonTest, CanRenderToSeparateSurface) { | 6264 TEST_F(LayerTreeHostCommonTest, CanRenderToSeparateSurface) { |
6253 FakeImplTaskRunnerProvider task_runner_provider; | 6265 FakeImplTaskRunnerProvider task_runner_provider; |
6254 TestSharedBitmapManager shared_bitmap_manager; | 6266 TestSharedBitmapManager shared_bitmap_manager; |
6255 TestTaskGraphRunner task_graph_runner; | 6267 TestTaskGraphRunner task_graph_runner; |
6256 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 6268 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
6257 &task_graph_runner); | 6269 &task_graph_runner); |
6258 | 6270 |
6259 scoped_ptr<LayerImpl> root = | 6271 std::unique_ptr<LayerImpl> root = |
6260 LayerImpl::Create(host_impl.active_tree(), 12345); | 6272 LayerImpl::Create(host_impl.active_tree(), 12345); |
6261 scoped_ptr<LayerImpl> child1 = | 6273 std::unique_ptr<LayerImpl> child1 = |
6262 LayerImpl::Create(host_impl.active_tree(), 123456); | 6274 LayerImpl::Create(host_impl.active_tree(), 123456); |
6263 scoped_ptr<LayerImpl> child2 = | 6275 std::unique_ptr<LayerImpl> child2 = |
6264 LayerImpl::Create(host_impl.active_tree(), 1234567); | 6276 LayerImpl::Create(host_impl.active_tree(), 1234567); |
6265 scoped_ptr<LayerImpl> child3 = | 6277 std::unique_ptr<LayerImpl> child3 = |
6266 LayerImpl::Create(host_impl.active_tree(), 12345678); | 6278 LayerImpl::Create(host_impl.active_tree(), 12345678); |
6267 | 6279 |
6268 gfx::Transform identity_matrix; | 6280 gfx::Transform identity_matrix; |
6269 gfx::Point3F transform_origin; | 6281 gfx::Point3F transform_origin; |
6270 gfx::PointF position; | 6282 gfx::PointF position; |
6271 gfx::Size bounds(100, 100); | 6283 gfx::Size bounds(100, 100); |
6272 SetLayerPropertiesForTesting(root.get(), identity_matrix, transform_origin, | 6284 SetLayerPropertiesForTesting(root.get(), identity_matrix, transform_origin, |
6273 position, bounds, true, false, true); | 6285 position, bounds, true, false, true); |
6274 root->SetDrawsContent(true); | 6286 root->SetDrawsContent(true); |
6275 | 6287 |
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6544 LayerImpl* scroll_parent_border = AddChildToRoot<LayerImpl>(); | 6556 LayerImpl* scroll_parent_border = AddChildToRoot<LayerImpl>(); |
6545 LayerImpl* scroll_parent_clip = AddChild<LayerImpl>(scroll_parent_border); | 6557 LayerImpl* scroll_parent_clip = AddChild<LayerImpl>(scroll_parent_border); |
6546 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_clip); | 6558 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_clip); |
6547 LayerImpl* scroll_child = AddChild<LayerImpl>(root); | 6559 LayerImpl* scroll_child = AddChild<LayerImpl>(root); |
6548 | 6560 |
6549 scroll_parent->SetDrawsContent(true); | 6561 scroll_parent->SetDrawsContent(true); |
6550 scroll_child->SetDrawsContent(true); | 6562 scroll_child->SetDrawsContent(true); |
6551 scroll_parent_clip->SetMasksToBounds(true); | 6563 scroll_parent_clip->SetMasksToBounds(true); |
6552 | 6564 |
6553 scroll_child->SetScrollParent(scroll_parent); | 6565 scroll_child->SetScrollParent(scroll_parent); |
6554 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 6566 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 6567 new std::set<LayerImpl*>); |
6555 scroll_children->insert(scroll_child); | 6568 scroll_children->insert(scroll_child); |
6556 scroll_parent->SetScrollChildren(scroll_children.release()); | 6569 scroll_parent->SetScrollChildren(scroll_children.release()); |
6557 | 6570 |
6558 gfx::Transform identity_transform; | 6571 gfx::Transform identity_transform; |
6559 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6572 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
6560 gfx::PointF(), gfx::Size(50, 50), true, false, | 6573 gfx::PointF(), gfx::Size(50, 50), true, false, |
6561 true); | 6574 true); |
6562 SetLayerPropertiesForTesting(scroll_parent_border, identity_transform, | 6575 SetLayerPropertiesForTesting(scroll_parent_border, identity_transform, |
6563 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), | 6576 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), |
6564 true, false, false); | 6577 true, false, false); |
(...skipping 21 matching lines...) Expand all Loading... |
6586 LayerImpl* root = root_layer(); | 6599 LayerImpl* root = root_layer(); |
6587 LayerImpl* scroll_child_target = AddChildToRoot<LayerImpl>(); | 6600 LayerImpl* scroll_child_target = AddChildToRoot<LayerImpl>(); |
6588 LayerImpl* scroll_child = AddChild<LayerImpl>(scroll_child_target); | 6601 LayerImpl* scroll_child = AddChild<LayerImpl>(scroll_child_target); |
6589 LayerImpl* scroll_parent_target = AddChild<LayerImpl>(scroll_child_target); | 6602 LayerImpl* scroll_parent_target = AddChild<LayerImpl>(scroll_child_target); |
6590 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_target); | 6603 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_target); |
6591 | 6604 |
6592 scroll_parent->SetDrawsContent(true); | 6605 scroll_parent->SetDrawsContent(true); |
6593 scroll_child->SetDrawsContent(true); | 6606 scroll_child->SetDrawsContent(true); |
6594 | 6607 |
6595 scroll_child->SetScrollParent(scroll_parent); | 6608 scroll_child->SetScrollParent(scroll_parent); |
6596 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 6609 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 6610 new std::set<LayerImpl*>); |
6597 scroll_children->insert(scroll_child); | 6611 scroll_children->insert(scroll_child); |
6598 scroll_parent->SetScrollChildren(scroll_children.release()); | 6612 scroll_parent->SetScrollChildren(scroll_children.release()); |
6599 | 6613 |
6600 gfx::Transform identity_transform; | 6614 gfx::Transform identity_transform; |
6601 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6615 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
6602 gfx::PointF(), gfx::Size(50, 50), true, false, | 6616 gfx::PointF(), gfx::Size(50, 50), true, false, |
6603 true); | 6617 true); |
6604 SetLayerPropertiesForTesting(scroll_child_target, identity_transform, | 6618 SetLayerPropertiesForTesting(scroll_child_target, identity_transform, |
6605 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), | 6619 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), |
6606 true, false, true); | 6620 true, false, true); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6693 LayerImpl* scroll_parent_clip = AddChild<LayerImpl>(scroll_parent_border); | 6707 LayerImpl* scroll_parent_clip = AddChild<LayerImpl>(scroll_parent_border); |
6694 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_clip); | 6708 LayerImpl* scroll_parent = AddChild<LayerImpl>(scroll_parent_clip); |
6695 LayerImpl* scroll_child = AddChild<LayerImpl>(root); | 6709 LayerImpl* scroll_child = AddChild<LayerImpl>(root); |
6696 | 6710 |
6697 scroll_parent->SetDrawsContent(true); | 6711 scroll_parent->SetDrawsContent(true); |
6698 scroll_child->SetDrawsContent(true); | 6712 scroll_child->SetDrawsContent(true); |
6699 | 6713 |
6700 scroll_parent_clip->SetMasksToBounds(true); | 6714 scroll_parent_clip->SetMasksToBounds(true); |
6701 | 6715 |
6702 scroll_child->SetScrollParent(scroll_parent); | 6716 scroll_child->SetScrollParent(scroll_parent); |
6703 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 6717 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 6718 new std::set<LayerImpl*>); |
6704 scroll_children->insert(scroll_child); | 6719 scroll_children->insert(scroll_child); |
6705 scroll_parent->SetScrollChildren(scroll_children.release()); | 6720 scroll_parent->SetScrollChildren(scroll_children.release()); |
6706 | 6721 |
6707 gfx::Transform identity_transform; | 6722 gfx::Transform identity_transform; |
6708 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6723 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
6709 gfx::PointF(), gfx::Size(50, 50), true, false, | 6724 gfx::PointF(), gfx::Size(50, 50), true, false, |
6710 true); | 6725 true); |
6711 SetLayerPropertiesForTesting(scroll_parent_border, identity_transform, | 6726 SetLayerPropertiesForTesting(scroll_parent_border, identity_transform, |
6712 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), | 6727 gfx::Point3F(), gfx::PointF(), gfx::Size(40, 40), |
6713 true, false, false); | 6728 true, false, false); |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6753 LayerImpl* scroll_grandparent = AddChild<LayerImpl>(scroll_grandparent_clip); | 6768 LayerImpl* scroll_grandparent = AddChild<LayerImpl>(scroll_grandparent_clip); |
6754 | 6769 |
6755 scroll_parent->SetDrawsContent(true); | 6770 scroll_parent->SetDrawsContent(true); |
6756 scroll_grandparent->SetDrawsContent(true); | 6771 scroll_grandparent->SetDrawsContent(true); |
6757 scroll_child->SetDrawsContent(true); | 6772 scroll_child->SetDrawsContent(true); |
6758 | 6773 |
6759 scroll_parent_clip->SetMasksToBounds(true); | 6774 scroll_parent_clip->SetMasksToBounds(true); |
6760 scroll_grandparent_clip->SetMasksToBounds(true); | 6775 scroll_grandparent_clip->SetMasksToBounds(true); |
6761 | 6776 |
6762 scroll_child->SetScrollParent(scroll_parent); | 6777 scroll_child->SetScrollParent(scroll_parent); |
6763 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 6778 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 6779 new std::set<LayerImpl*>); |
6764 scroll_children->insert(scroll_child); | 6780 scroll_children->insert(scroll_child); |
6765 scroll_parent->SetScrollChildren(scroll_children.release()); | 6781 scroll_parent->SetScrollChildren(scroll_children.release()); |
6766 | 6782 |
6767 scroll_parent_border->SetScrollParent(scroll_grandparent); | 6783 scroll_parent_border->SetScrollParent(scroll_grandparent); |
6768 scroll_children.reset(new std::set<LayerImpl*>); | 6784 scroll_children.reset(new std::set<LayerImpl*>); |
6769 scroll_children->insert(scroll_parent_border); | 6785 scroll_children->insert(scroll_parent_border); |
6770 scroll_grandparent->SetScrollChildren(scroll_children.release()); | 6786 scroll_grandparent->SetScrollChildren(scroll_children.release()); |
6771 | 6787 |
6772 gfx::Transform identity_transform; | 6788 gfx::Transform identity_transform; |
6773 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6789 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6842 | 6858 |
6843 scroll_parent->SetDrawsContent(true); | 6859 scroll_parent->SetDrawsContent(true); |
6844 render_surface1->SetDrawsContent(true); | 6860 render_surface1->SetDrawsContent(true); |
6845 scroll_grandparent->SetDrawsContent(true); | 6861 scroll_grandparent->SetDrawsContent(true); |
6846 render_surface2->SetDrawsContent(true); | 6862 render_surface2->SetDrawsContent(true); |
6847 | 6863 |
6848 scroll_parent_clip->SetMasksToBounds(true); | 6864 scroll_parent_clip->SetMasksToBounds(true); |
6849 scroll_grandparent_clip->SetMasksToBounds(true); | 6865 scroll_grandparent_clip->SetMasksToBounds(true); |
6850 | 6866 |
6851 scroll_child->SetScrollParent(scroll_parent); | 6867 scroll_child->SetScrollParent(scroll_parent); |
6852 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 6868 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 6869 new std::set<LayerImpl*>); |
6853 scroll_children->insert(scroll_child); | 6870 scroll_children->insert(scroll_child); |
6854 scroll_parent->SetScrollChildren(scroll_children.release()); | 6871 scroll_parent->SetScrollChildren(scroll_children.release()); |
6855 | 6872 |
6856 scroll_parent_border->SetScrollParent(scroll_grandparent); | 6873 scroll_parent_border->SetScrollParent(scroll_grandparent); |
6857 scroll_children.reset(new std::set<LayerImpl*>); | 6874 scroll_children.reset(new std::set<LayerImpl*>); |
6858 scroll_children->insert(scroll_parent_border); | 6875 scroll_children->insert(scroll_parent_border); |
6859 scroll_grandparent->SetScrollChildren(scroll_children.release()); | 6876 scroll_grandparent->SetScrollChildren(scroll_children.release()); |
6860 | 6877 |
6861 gfx::Transform identity_transform; | 6878 gfx::Transform identity_transform; |
6862 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 6879 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6981 // + container | 6998 // + container |
6982 // + scroller | 6999 // + scroller |
6983 // + fixed | 7000 // + fixed |
6984 // | 7001 // |
6985 FakeImplTaskRunnerProvider task_runner_provider; | 7002 FakeImplTaskRunnerProvider task_runner_provider; |
6986 TestSharedBitmapManager shared_bitmap_manager; | 7003 TestSharedBitmapManager shared_bitmap_manager; |
6987 TestTaskGraphRunner task_graph_runner; | 7004 TestTaskGraphRunner task_graph_runner; |
6988 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 7005 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
6989 &task_graph_runner); | 7006 &task_graph_runner); |
6990 host_impl.CreatePendingTree(); | 7007 host_impl.CreatePendingTree(); |
6991 scoped_ptr<LayerImpl> root_ptr = | 7008 std::unique_ptr<LayerImpl> root_ptr = |
6992 LayerImpl::Create(host_impl.active_tree(), 1); | 7009 LayerImpl::Create(host_impl.active_tree(), 1); |
6993 LayerImpl* root = root_ptr.get(); | 7010 LayerImpl* root = root_ptr.get(); |
6994 scoped_ptr<LayerImpl> container = | 7011 std::unique_ptr<LayerImpl> container = |
6995 LayerImpl::Create(host_impl.active_tree(), 2); | 7012 LayerImpl::Create(host_impl.active_tree(), 2); |
6996 LayerImpl* container_layer = container.get(); | 7013 LayerImpl* container_layer = container.get(); |
6997 scoped_ptr<LayerImpl> scroller = | 7014 std::unique_ptr<LayerImpl> scroller = |
6998 LayerImpl::Create(host_impl.active_tree(), 3); | 7015 LayerImpl::Create(host_impl.active_tree(), 3); |
6999 LayerImpl* scroll_layer = scroller.get(); | 7016 LayerImpl* scroll_layer = scroller.get(); |
7000 scoped_ptr<LayerImpl> fixed = LayerImpl::Create(host_impl.active_tree(), 4); | 7017 std::unique_ptr<LayerImpl> fixed = |
| 7018 LayerImpl::Create(host_impl.active_tree(), 4); |
7001 LayerImpl* fixed_layer = fixed.get(); | 7019 LayerImpl* fixed_layer = fixed.get(); |
7002 | 7020 |
7003 container->SetIsContainerForFixedPositionLayers(true); | 7021 container->SetIsContainerForFixedPositionLayers(true); |
7004 | 7022 |
7005 LayerPositionConstraint constraint; | 7023 LayerPositionConstraint constraint; |
7006 constraint.set_is_fixed_position(true); | 7024 constraint.set_is_fixed_position(true); |
7007 fixed->SetPositionConstraint(constraint); | 7025 fixed->SetPositionConstraint(constraint); |
7008 | 7026 |
7009 scroller->SetScrollClipLayer(container->id()); | 7027 scroller->SetScrollClipLayer(container->id()); |
7010 | 7028 |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7171 | 7189 |
7172 ExecuteCalculateDrawProperties(root); | 7190 ExecuteCalculateDrawProperties(root); |
7173 | 7191 |
7174 gfx::Vector2dF expected_draw_transform_translation(-7.5f, -13.5f); | 7192 gfx::Vector2dF expected_draw_transform_translation(-7.5f, -13.5f); |
7175 EXPECT_VECTOR2DF_EQ(expected_draw_transform_translation, | 7193 EXPECT_VECTOR2DF_EQ(expected_draw_transform_translation, |
7176 scroller->DrawTransform().To2dTranslation()); | 7194 scroller->DrawTransform().To2dTranslation()); |
7177 } | 7195 } |
7178 | 7196 |
7179 class AnimationScaleFactorTrackingLayerImpl : public LayerImpl { | 7197 class AnimationScaleFactorTrackingLayerImpl : public LayerImpl { |
7180 public: | 7198 public: |
7181 static scoped_ptr<AnimationScaleFactorTrackingLayerImpl> Create( | 7199 static std::unique_ptr<AnimationScaleFactorTrackingLayerImpl> Create( |
7182 LayerTreeImpl* tree_impl, | 7200 LayerTreeImpl* tree_impl, |
7183 int id) { | 7201 int id) { |
7184 return make_scoped_ptr( | 7202 return base::WrapUnique( |
7185 new AnimationScaleFactorTrackingLayerImpl(tree_impl, id)); | 7203 new AnimationScaleFactorTrackingLayerImpl(tree_impl, id)); |
7186 } | 7204 } |
7187 | 7205 |
7188 ~AnimationScaleFactorTrackingLayerImpl() override {} | 7206 ~AnimationScaleFactorTrackingLayerImpl() override {} |
7189 | 7207 |
7190 private: | 7208 private: |
7191 explicit AnimationScaleFactorTrackingLayerImpl(LayerTreeImpl* tree_impl, | 7209 explicit AnimationScaleFactorTrackingLayerImpl(LayerTreeImpl* tree_impl, |
7192 int id) | 7210 int id) |
7193 : LayerImpl(tree_impl, id) { | 7211 : LayerImpl(tree_impl, id) { |
7194 SetDrawsContent(true); | 7212 SetDrawsContent(true); |
7195 } | 7213 } |
7196 }; | 7214 }; |
7197 | 7215 |
7198 TEST_F(LayerTreeHostCommonTest, MaximumAnimationScaleFactor) { | 7216 TEST_F(LayerTreeHostCommonTest, MaximumAnimationScaleFactor) { |
7199 FakeImplTaskRunnerProvider task_runner_provider; | 7217 FakeImplTaskRunnerProvider task_runner_provider; |
7200 TestSharedBitmapManager shared_bitmap_manager; | 7218 TestSharedBitmapManager shared_bitmap_manager; |
7201 TestTaskGraphRunner task_graph_runner; | 7219 TestTaskGraphRunner task_graph_runner; |
7202 LayerTreeSettings settings = host()->settings(); | 7220 LayerTreeSettings settings = host()->settings(); |
7203 settings.layer_transforms_should_scale_layer_contents = true; | 7221 settings.layer_transforms_should_scale_layer_contents = true; |
7204 FakeLayerTreeHostImpl host_impl(settings, &task_runner_provider, | 7222 FakeLayerTreeHostImpl host_impl(settings, &task_runner_provider, |
7205 &shared_bitmap_manager, &task_graph_runner); | 7223 &shared_bitmap_manager, &task_graph_runner); |
7206 gfx::Transform identity_matrix; | 7224 gfx::Transform identity_matrix; |
7207 scoped_ptr<AnimationScaleFactorTrackingLayerImpl> grand_parent = | 7225 std::unique_ptr<AnimationScaleFactorTrackingLayerImpl> grand_parent = |
7208 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 1); | 7226 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 1); |
7209 scoped_ptr<AnimationScaleFactorTrackingLayerImpl> parent = | 7227 std::unique_ptr<AnimationScaleFactorTrackingLayerImpl> parent = |
7210 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 2); | 7228 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 2); |
7211 scoped_ptr<AnimationScaleFactorTrackingLayerImpl> child = | 7229 std::unique_ptr<AnimationScaleFactorTrackingLayerImpl> child = |
7212 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 3); | 7230 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 3); |
7213 scoped_ptr<AnimationScaleFactorTrackingLayerImpl> grand_child = | 7231 std::unique_ptr<AnimationScaleFactorTrackingLayerImpl> grand_child = |
7214 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 4); | 7232 AnimationScaleFactorTrackingLayerImpl::Create(host_impl.active_tree(), 4); |
7215 | 7233 |
7216 AnimationScaleFactorTrackingLayerImpl* parent_raw = parent.get(); | 7234 AnimationScaleFactorTrackingLayerImpl* parent_raw = parent.get(); |
7217 AnimationScaleFactorTrackingLayerImpl* child_raw = child.get(); | 7235 AnimationScaleFactorTrackingLayerImpl* child_raw = child.get(); |
7218 AnimationScaleFactorTrackingLayerImpl* grand_child_raw = grand_child.get(); | 7236 AnimationScaleFactorTrackingLayerImpl* grand_child_raw = grand_child.get(); |
7219 AnimationScaleFactorTrackingLayerImpl* grand_parent_raw = grand_parent.get(); | 7237 AnimationScaleFactorTrackingLayerImpl* grand_parent_raw = grand_parent.get(); |
7220 | 7238 |
7221 child->AddChild(std::move(grand_child)); | 7239 child->AddChild(std::move(grand_child)); |
7222 parent->AddChild(std::move(child)); | 7240 parent->AddChild(std::move(child)); |
7223 grand_parent->AddChild(std::move(parent)); | 7241 grand_parent->AddChild(std::move(parent)); |
(...skipping 330 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7554 } | 7572 } |
7555 | 7573 |
7556 TEST_F(LayerTreeHostCommonTest, RenderSurfaceLayerListMembership) { | 7574 TEST_F(LayerTreeHostCommonTest, RenderSurfaceLayerListMembership) { |
7557 FakeImplTaskRunnerProvider task_runner_provider; | 7575 FakeImplTaskRunnerProvider task_runner_provider; |
7558 TestSharedBitmapManager shared_bitmap_manager; | 7576 TestSharedBitmapManager shared_bitmap_manager; |
7559 TestTaskGraphRunner task_graph_runner; | 7577 TestTaskGraphRunner task_graph_runner; |
7560 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 7578 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
7561 &task_graph_runner); | 7579 &task_graph_runner); |
7562 gfx::Transform identity_matrix; | 7580 gfx::Transform identity_matrix; |
7563 | 7581 |
7564 scoped_ptr<LayerImpl> grand_parent = | 7582 std::unique_ptr<LayerImpl> grand_parent = |
7565 LayerImpl::Create(host_impl.active_tree(), 1); | 7583 LayerImpl::Create(host_impl.active_tree(), 1); |
7566 scoped_ptr<LayerImpl> parent = LayerImpl::Create(host_impl.active_tree(), 3); | 7584 std::unique_ptr<LayerImpl> parent = |
7567 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.active_tree(), 5); | 7585 LayerImpl::Create(host_impl.active_tree(), 3); |
7568 scoped_ptr<LayerImpl> grand_child1 = | 7586 std::unique_ptr<LayerImpl> child = |
| 7587 LayerImpl::Create(host_impl.active_tree(), 5); |
| 7588 std::unique_ptr<LayerImpl> grand_child1 = |
7569 LayerImpl::Create(host_impl.active_tree(), 7); | 7589 LayerImpl::Create(host_impl.active_tree(), 7); |
7570 scoped_ptr<LayerImpl> grand_child2 = | 7590 std::unique_ptr<LayerImpl> grand_child2 = |
7571 LayerImpl::Create(host_impl.active_tree(), 9); | 7591 LayerImpl::Create(host_impl.active_tree(), 9); |
7572 | 7592 |
7573 LayerImpl* grand_parent_raw = grand_parent.get(); | 7593 LayerImpl* grand_parent_raw = grand_parent.get(); |
7574 LayerImpl* parent_raw = parent.get(); | 7594 LayerImpl* parent_raw = parent.get(); |
7575 LayerImpl* child_raw = child.get(); | 7595 LayerImpl* child_raw = child.get(); |
7576 LayerImpl* grand_child1_raw = grand_child1.get(); | 7596 LayerImpl* grand_child1_raw = grand_child1.get(); |
7577 LayerImpl* grand_child2_raw = grand_child2.get(); | 7597 LayerImpl* grand_child2_raw = grand_child2.get(); |
7578 | 7598 |
7579 child->AddChild(std::move(grand_child1)); | 7599 child->AddChild(std::move(grand_child1)); |
7580 child->AddChild(std::move(grand_child2)); | 7600 child->AddChild(std::move(grand_child2)); |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7699 | 7719 |
7700 expected.clear(); | 7720 expected.clear(); |
7701 expected.insert(grand_child2_raw); | 7721 expected.insert(grand_child2_raw); |
7702 expected.insert(child_raw->mask_layer()); | 7722 expected.insert(child_raw->mask_layer()); |
7703 | 7723 |
7704 actual.clear(); | 7724 actual.clear(); |
7705 GatherDrawnLayers(render_surface_layer_list_impl(), &actual); | 7725 GatherDrawnLayers(render_surface_layer_list_impl(), &actual); |
7706 EXPECT_EQ(expected, actual); | 7726 EXPECT_EQ(expected, actual); |
7707 | 7727 |
7708 // Add replica mask layer. | 7728 // Add replica mask layer. |
7709 scoped_ptr<LayerImpl> replica_layer = | 7729 std::unique_ptr<LayerImpl> replica_layer = |
7710 LayerImpl::Create(host_impl.active_tree(), 20); | 7730 LayerImpl::Create(host_impl.active_tree(), 20); |
7711 replica_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 21)); | 7731 replica_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 21)); |
7712 child_raw->SetReplicaLayer(std::move(replica_layer)); | 7732 child_raw->SetReplicaLayer(std::move(replica_layer)); |
7713 child_raw->layer_tree_impl()->property_trees()->needs_rebuild = true; | 7733 child_raw->layer_tree_impl()->property_trees()->needs_rebuild = true; |
7714 | 7734 |
7715 ExecuteCalculateDrawProperties(grand_parent_raw); | 7735 ExecuteCalculateDrawProperties(grand_parent_raw); |
7716 member_id = render_surface_layer_list_count(); | 7736 member_id = render_surface_layer_list_count(); |
7717 | 7737 |
7718 EXPECT_NE(member_id, membership_id(grand_parent_raw)); | 7738 EXPECT_NE(member_id, membership_id(grand_parent_raw)); |
7719 EXPECT_NE(member_id, membership_id(parent_raw)); | 7739 EXPECT_NE(member_id, membership_id(parent_raw)); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7806 | 7826 |
7807 TEST_F(LayerTreeHostCommonTest, DrawPropertyScales) { | 7827 TEST_F(LayerTreeHostCommonTest, DrawPropertyScales) { |
7808 FakeImplTaskRunnerProvider task_runner_provider; | 7828 FakeImplTaskRunnerProvider task_runner_provider; |
7809 TestSharedBitmapManager shared_bitmap_manager; | 7829 TestSharedBitmapManager shared_bitmap_manager; |
7810 TestTaskGraphRunner task_graph_runner; | 7830 TestTaskGraphRunner task_graph_runner; |
7811 LayerTreeSettings settings = host()->settings(); | 7831 LayerTreeSettings settings = host()->settings(); |
7812 settings.layer_transforms_should_scale_layer_contents = true; | 7832 settings.layer_transforms_should_scale_layer_contents = true; |
7813 FakeLayerTreeHostImpl host_impl(settings, &task_runner_provider, | 7833 FakeLayerTreeHostImpl host_impl(settings, &task_runner_provider, |
7814 &shared_bitmap_manager, &task_graph_runner); | 7834 &shared_bitmap_manager, &task_graph_runner); |
7815 | 7835 |
7816 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.active_tree(), 1); | 7836 std::unique_ptr<LayerImpl> root = |
| 7837 LayerImpl::Create(host_impl.active_tree(), 1); |
7817 LayerImpl* root_layer = root.get(); | 7838 LayerImpl* root_layer = root.get(); |
7818 scoped_ptr<LayerImpl> child1 = LayerImpl::Create(host_impl.active_tree(), 2); | 7839 std::unique_ptr<LayerImpl> child1 = |
| 7840 LayerImpl::Create(host_impl.active_tree(), 2); |
7819 LayerImpl* child1_layer = child1.get(); | 7841 LayerImpl* child1_layer = child1.get(); |
7820 scoped_ptr<LayerImpl> child2 = LayerImpl::Create(host_impl.active_tree(), 3); | 7842 std::unique_ptr<LayerImpl> child2 = |
| 7843 LayerImpl::Create(host_impl.active_tree(), 3); |
7821 LayerImpl* child2_layer = child2.get(); | 7844 LayerImpl* child2_layer = child2.get(); |
7822 | 7845 |
7823 root->AddChild(std::move(child1)); | 7846 root->AddChild(std::move(child1)); |
7824 root->AddChild(std::move(child2)); | 7847 root->AddChild(std::move(child2)); |
7825 root->SetForceRenderSurface(true); | 7848 root->SetForceRenderSurface(true); |
7826 root->SetDrawsContent(true); | 7849 root->SetDrawsContent(true); |
7827 host_impl.active_tree()->SetRootLayer(std::move(root)); | 7850 host_impl.active_tree()->SetRootLayer(std::move(root)); |
7828 | 7851 |
7829 gfx::Transform identity_matrix, scale_transform_child1, | 7852 gfx::Transform identity_matrix, scale_transform_child1, |
7830 scale_transform_child2; | 7853 scale_transform_child2; |
7831 scale_transform_child1.Scale(2, 3); | 7854 scale_transform_child1.Scale(2, 3); |
7832 scale_transform_child2.Scale(4, 5); | 7855 scale_transform_child2.Scale(4, 5); |
7833 | 7856 |
7834 SetLayerPropertiesForTesting(root_layer, identity_matrix, gfx::Point3F(), | 7857 SetLayerPropertiesForTesting(root_layer, identity_matrix, gfx::Point3F(), |
7835 gfx::PointF(), gfx::Size(1, 1), true, false, | 7858 gfx::PointF(), gfx::Size(1, 1), true, false, |
7836 true); | 7859 true); |
7837 SetLayerPropertiesForTesting(child1_layer, scale_transform_child1, | 7860 SetLayerPropertiesForTesting(child1_layer, scale_transform_child1, |
7838 gfx::Point3F(), gfx::PointF(), gfx::Size(1, 1), | 7861 gfx::Point3F(), gfx::PointF(), gfx::Size(1, 1), |
7839 true, false, false); | 7862 true, false, false); |
7840 | 7863 |
7841 child1_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 4)); | 7864 child1_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 4)); |
7842 child1_layer->SetDrawsContent(true); | 7865 child1_layer->SetDrawsContent(true); |
7843 | 7866 |
7844 scoped_ptr<LayerImpl> replica_layer = | 7867 std::unique_ptr<LayerImpl> replica_layer = |
7845 LayerImpl::Create(host_impl.active_tree(), 5); | 7868 LayerImpl::Create(host_impl.active_tree(), 5); |
7846 replica_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 6)); | 7869 replica_layer->SetMaskLayer(LayerImpl::Create(host_impl.active_tree(), 6)); |
7847 child1_layer->SetReplicaLayer(std::move(replica_layer)); | 7870 child1_layer->SetReplicaLayer(std::move(replica_layer)); |
7848 child1_layer->SetHasRenderSurface(true); | 7871 child1_layer->SetHasRenderSurface(true); |
7849 | 7872 |
7850 ExecuteCalculateDrawProperties(root_layer); | 7873 ExecuteCalculateDrawProperties(root_layer); |
7851 | 7874 |
7852 TransformOperations scale; | 7875 TransformOperations scale; |
7853 scale.AppendScale(5.f, 8.f, 3.f); | 7876 scale.AppendScale(5.f, 8.f, 3.f); |
7854 | 7877 |
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8276 gfx::Transform identity_transform; | 8299 gfx::Transform identity_transform; |
8277 SetLayerPropertiesForTesting(root.get(), identity_transform, gfx::Point3F(), | 8300 SetLayerPropertiesForTesting(root.get(), identity_transform, gfx::Point3F(), |
8278 gfx::PointF(), gfx::Size(50, 50), true, false); | 8301 gfx::PointF(), gfx::Size(50, 50), true, false); |
8279 SetLayerPropertiesForTesting(child.get(), identity_transform, gfx::Point3F(), | 8302 SetLayerPropertiesForTesting(child.get(), identity_transform, gfx::Point3F(), |
8280 gfx::PointF(), gfx::Size(50, 50), true, false); | 8303 gfx::PointF(), gfx::Size(50, 50), true, false); |
8281 SetLayerPropertiesForTesting(grandchild.get(), identity_transform, | 8304 SetLayerPropertiesForTesting(grandchild.get(), identity_transform, |
8282 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), | 8305 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), |
8283 true, false); | 8306 true, false); |
8284 host()->SetRootLayer(root); | 8307 host()->SetRootLayer(root); |
8285 | 8308 |
8286 scoped_ptr<KeyframedFilterAnimationCurve> curve( | 8309 std::unique_ptr<KeyframedFilterAnimationCurve> curve( |
8287 KeyframedFilterAnimationCurve::Create()); | 8310 KeyframedFilterAnimationCurve::Create()); |
8288 FilterOperations start_filters; | 8311 FilterOperations start_filters; |
8289 start_filters.Append(FilterOperation::CreateBrightnessFilter(0.1f)); | 8312 start_filters.Append(FilterOperation::CreateBrightnessFilter(0.1f)); |
8290 FilterOperations end_filters; | 8313 FilterOperations end_filters; |
8291 end_filters.Append(FilterOperation::CreateBrightnessFilter(0.3f)); | 8314 end_filters.Append(FilterOperation::CreateBrightnessFilter(0.3f)); |
8292 curve->AddKeyframe( | 8315 curve->AddKeyframe( |
8293 FilterKeyframe::Create(base::TimeDelta(), start_filters, nullptr)); | 8316 FilterKeyframe::Create(base::TimeDelta(), start_filters, nullptr)); |
8294 curve->AddKeyframe(FilterKeyframe::Create( | 8317 curve->AddKeyframe(FilterKeyframe::Create( |
8295 base::TimeDelta::FromMilliseconds(100), end_filters, nullptr)); | 8318 base::TimeDelta::FromMilliseconds(100), end_filters, nullptr)); |
8296 scoped_ptr<Animation> animation = | 8319 std::unique_ptr<Animation> animation = |
8297 Animation::Create(std::move(curve), 0, 1, TargetProperty::FILTER); | 8320 Animation::Create(std::move(curve), 0, 1, TargetProperty::FILTER); |
8298 animation->set_fill_mode(Animation::FILL_MODE_NONE); | 8321 animation->set_fill_mode(Animation::FILL_MODE_NONE); |
8299 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); | 8322 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); |
8300 | 8323 |
8301 AddAnimationToLayerWithPlayer(child->id(), timeline(), std::move(animation)); | 8324 AddAnimationToLayerWithPlayer(child->id(), timeline(), std::move(animation)); |
8302 ExecuteCalculateDrawProperties(root.get()); | 8325 ExecuteCalculateDrawProperties(root.get()); |
8303 | 8326 |
8304 EXPECT_TRUE(root->has_render_surface()); | 8327 EXPECT_TRUE(root->has_render_surface()); |
8305 EXPECT_TRUE(child->has_render_surface()); | 8328 EXPECT_TRUE(child->has_render_surface()); |
8306 EXPECT_FALSE(grandchild->has_render_surface()); | 8329 EXPECT_FALSE(grandchild->has_render_surface()); |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8561 EXPECT_EQ(gfx::Rect(5, 5, 5, 5), child->visible_layer_rect()); | 8584 EXPECT_EQ(gfx::Rect(5, 5, 5, 5), child->visible_layer_rect()); |
8562 } | 8585 } |
8563 | 8586 |
8564 TEST_F(LayerTreeHostCommonTest, UpdateScrollChildPosition) { | 8587 TEST_F(LayerTreeHostCommonTest, UpdateScrollChildPosition) { |
8565 LayerImpl* root = root_layer(); | 8588 LayerImpl* root = root_layer(); |
8566 LayerImpl* scroll_parent = AddChild<LayerImpl>(root); | 8589 LayerImpl* scroll_parent = AddChild<LayerImpl>(root); |
8567 LayerImpl* scroll_child = AddChild<LayerImpl>(scroll_parent); | 8590 LayerImpl* scroll_child = AddChild<LayerImpl>(scroll_parent); |
8568 | 8591 |
8569 scroll_child->SetDrawsContent(true); | 8592 scroll_child->SetDrawsContent(true); |
8570 scroll_child->SetScrollParent(scroll_parent); | 8593 scroll_child->SetScrollParent(scroll_parent); |
8571 scoped_ptr<std::set<LayerImpl*>> scroll_children(new std::set<LayerImpl*>); | 8594 std::unique_ptr<std::set<LayerImpl*>> scroll_children( |
| 8595 new std::set<LayerImpl*>); |
8572 scroll_children->insert(scroll_child); | 8596 scroll_children->insert(scroll_child); |
8573 scroll_parent->SetScrollChildren(scroll_children.release()); | 8597 scroll_parent->SetScrollChildren(scroll_children.release()); |
8574 scroll_parent->SetDrawsContent(true); | 8598 scroll_parent->SetDrawsContent(true); |
8575 | 8599 |
8576 gfx::Transform identity_transform; | 8600 gfx::Transform identity_transform; |
8577 gfx::Transform scale; | 8601 gfx::Transform scale; |
8578 scale.Scale(2.f, 2.f); | 8602 scale.Scale(2.f, 2.f); |
8579 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), | 8603 SetLayerPropertiesForTesting(root, identity_transform, gfx::Point3F(), |
8580 gfx::PointF(), gfx::Size(50, 50), true, false, | 8604 gfx::PointF(), gfx::Size(50, 50), true, false, |
8581 true); | 8605 true); |
8582 SetLayerPropertiesForTesting(scroll_child, scale, gfx::Point3F(), | 8606 SetLayerPropertiesForTesting(scroll_child, scale, gfx::Point3F(), |
8583 gfx::PointF(), gfx::Size(40, 40), true, false, | 8607 gfx::PointF(), gfx::Size(40, 40), true, false, |
8584 false); | 8608 false); |
8585 SetLayerPropertiesForTesting(scroll_parent, identity_transform, | 8609 SetLayerPropertiesForTesting(scroll_parent, identity_transform, |
8586 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 8610 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
8587 true, false, false); | 8611 true, false, false); |
8588 | 8612 |
8589 ExecuteCalculateDrawProperties(root); | 8613 ExecuteCalculateDrawProperties(root); |
8590 EXPECT_EQ(gfx::Rect(25, 25), scroll_child->visible_layer_rect()); | 8614 EXPECT_EQ(gfx::Rect(25, 25), scroll_child->visible_layer_rect()); |
8591 | 8615 |
8592 scroll_child->SetPosition(gfx::PointF(0, -10.f)); | 8616 scroll_child->SetPosition(gfx::PointF(0, -10.f)); |
8593 scroll_parent->SetCurrentScrollOffset(gfx::ScrollOffset(0.f, 10.f)); | 8617 scroll_parent->SetCurrentScrollOffset(gfx::ScrollOffset(0.f, 10.f)); |
8594 root->layer_tree_impl()->property_trees()->needs_rebuild = true; | 8618 root->layer_tree_impl()->property_trees()->needs_rebuild = true; |
8595 ExecuteCalculateDrawProperties(root); | 8619 ExecuteCalculateDrawProperties(root); |
8596 EXPECT_EQ(gfx::Rect(0, 5, 25, 25), scroll_child->visible_layer_rect()); | 8620 EXPECT_EQ(gfx::Rect(0, 5, 25, 25), scroll_child->visible_layer_rect()); |
8597 } | 8621 } |
8598 | 8622 |
8599 static void CopyOutputCallback(scoped_ptr<CopyOutputResult> result) { | 8623 static void CopyOutputCallback(std::unique_ptr<CopyOutputResult> result) {} |
8600 } | |
8601 | 8624 |
8602 TEST_F(LayerTreeHostCommonTest, NumCopyRequestsInTargetSubtree) { | 8625 TEST_F(LayerTreeHostCommonTest, NumCopyRequestsInTargetSubtree) { |
8603 // If the layer has a node in effect_tree, the return value of | 8626 // If the layer has a node in effect_tree, the return value of |
8604 // num_copy_requests_in_target_subtree() must be equal to the actual number | 8627 // num_copy_requests_in_target_subtree() must be equal to the actual number |
8605 // of copy requests in the sub-layer_tree; Otherwise, the number is expected | 8628 // of copy requests in the sub-layer_tree; Otherwise, the number is expected |
8606 // to be the value of its nearest ancestor that owns an effect node and | 8629 // to be the value of its nearest ancestor that owns an effect node and |
8607 // greater than or equal to the actual number of copy requests in the | 8630 // greater than or equal to the actual number of copy requests in the |
8608 // sub-layer_tree. | 8631 // sub-layer_tree. |
8609 | 8632 |
8610 scoped_refptr<Layer> root = Layer::Create(); | 8633 scoped_refptr<Layer> root = Layer::Create(); |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8681 EXPECT_EQ(gfx::Rect(0, 0), grandchild->visible_layer_rect_for_testing()); | 8704 EXPECT_EQ(gfx::Rect(0, 0), grandchild->visible_layer_rect_for_testing()); |
8682 child->SetHideLayerAndSubtree(false); | 8705 child->SetHideLayerAndSubtree(false); |
8683 | 8706 |
8684 gfx::Transform zero_z_scale; | 8707 gfx::Transform zero_z_scale; |
8685 zero_z_scale.Scale3d(1, 1, 0); | 8708 zero_z_scale.Scale3d(1, 1, 0); |
8686 child->SetTransform(zero_z_scale); | 8709 child->SetTransform(zero_z_scale); |
8687 | 8710 |
8688 // Add a transform animation with a start delay. Now, even though |child| has | 8711 // Add a transform animation with a start delay. Now, even though |child| has |
8689 // a singular transform, the subtree should still get processed. | 8712 // a singular transform, the subtree should still get processed. |
8690 int animation_id = 0; | 8713 int animation_id = 0; |
8691 scoped_ptr<Animation> animation = Animation::Create( | 8714 std::unique_ptr<Animation> animation = Animation::Create( |
8692 scoped_ptr<AnimationCurve>(new FakeTransformTransition(1.0)), | 8715 std::unique_ptr<AnimationCurve>(new FakeTransformTransition(1.0)), |
8693 animation_id, 1, TargetProperty::TRANSFORM); | 8716 animation_id, 1, TargetProperty::TRANSFORM); |
8694 animation->set_fill_mode(Animation::FILL_MODE_NONE); | 8717 animation->set_fill_mode(Animation::FILL_MODE_NONE); |
8695 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); | 8718 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); |
8696 AddAnimationToLayerWithPlayer(child->id(), timeline(), std::move(animation)); | 8719 AddAnimationToLayerWithPlayer(child->id(), timeline(), std::move(animation)); |
8697 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); | 8720 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); |
8698 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); | 8721 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); |
8699 grandchild->set_visible_layer_rect(gfx::Rect()); | 8722 grandchild->set_visible_layer_rect(gfx::Rect()); |
8700 | 8723 |
8701 RemoveAnimationFromLayerWithExistingPlayer(child->id(), timeline(), | 8724 RemoveAnimationFromLayerWithExistingPlayer(child->id(), timeline(), |
8702 animation_id); | 8725 animation_id); |
8703 child->SetTransform(identity); | 8726 child->SetTransform(identity); |
8704 child->SetOpacity(0.f); | 8727 child->SetOpacity(0.f); |
8705 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); | 8728 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); |
8706 EXPECT_EQ(gfx::Rect(0, 0), grandchild->visible_layer_rect_for_testing()); | 8729 EXPECT_EQ(gfx::Rect(0, 0), grandchild->visible_layer_rect_for_testing()); |
8707 | 8730 |
8708 // Now, even though child has zero opacity, we will configure |grandchild| and | 8731 // Now, even though child has zero opacity, we will configure |grandchild| and |
8709 // |greatgrandchild| in several ways that should force the subtree to be | 8732 // |greatgrandchild| in several ways that should force the subtree to be |
8710 // processed anyhow. | 8733 // processed anyhow. |
8711 grandchild->RequestCopyOfOutput( | 8734 grandchild->RequestCopyOfOutput( |
8712 CopyOutputRequest::CreateBitmapRequest(base::Bind(&CopyOutputCallback))); | 8735 CopyOutputRequest::CreateBitmapRequest(base::Bind(&CopyOutputCallback))); |
8713 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); | 8736 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); |
8714 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); | 8737 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); |
8715 greatgrandchild->set_visible_layer_rect(gfx::Rect()); | 8738 greatgrandchild->set_visible_layer_rect(gfx::Rect()); |
8716 | 8739 |
8717 // Add an opacity animation with a start delay. | 8740 // Add an opacity animation with a start delay. |
8718 animation_id = 1; | 8741 animation_id = 1; |
8719 animation = Animation::Create( | 8742 animation = Animation::Create( |
8720 scoped_ptr<AnimationCurve>(new FakeFloatTransition(1.0, 0.f, 1.f)), | 8743 std::unique_ptr<AnimationCurve>(new FakeFloatTransition(1.0, 0.f, 1.f)), |
8721 animation_id, 1, TargetProperty::OPACITY); | 8744 animation_id, 1, TargetProperty::OPACITY); |
8722 animation->set_fill_mode(Animation::FILL_MODE_NONE); | 8745 animation->set_fill_mode(Animation::FILL_MODE_NONE); |
8723 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); | 8746 animation->set_time_offset(base::TimeDelta::FromMilliseconds(-1000)); |
8724 AddAnimationToLayerWithExistingPlayer(child->id(), timeline(), | 8747 AddAnimationToLayerWithExistingPlayer(child->id(), timeline(), |
8725 std::move(animation)); | 8748 std::move(animation)); |
8726 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); | 8749 ExecuteCalculateDrawPropertiesWithPropertyTrees(root.get()); |
8727 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); | 8750 EXPECT_EQ(gfx::Rect(10, 10), grandchild->visible_layer_rect_for_testing()); |
8728 } | 8751 } |
8729 | 8752 |
8730 TEST_F(LayerTreeHostCommonTest, SkippingLayerImpl) { | 8753 TEST_F(LayerTreeHostCommonTest, SkippingLayerImpl) { |
8731 FakeImplTaskRunnerProvider task_runner_provider; | 8754 FakeImplTaskRunnerProvider task_runner_provider; |
8732 TestSharedBitmapManager shared_bitmap_manager; | 8755 TestSharedBitmapManager shared_bitmap_manager; |
8733 TestTaskGraphRunner task_graph_runner; | 8756 TestTaskGraphRunner task_graph_runner; |
8734 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 8757 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
8735 &task_graph_runner); | 8758 &task_graph_runner); |
8736 | 8759 |
8737 gfx::Transform identity; | 8760 gfx::Transform identity; |
8738 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.active_tree(), 1); | 8761 std::unique_ptr<LayerImpl> root = |
8739 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.active_tree(), 2); | 8762 LayerImpl::Create(host_impl.active_tree(), 1); |
8740 scoped_ptr<LayerImpl> grandchild = | 8763 std::unique_ptr<LayerImpl> child = |
| 8764 LayerImpl::Create(host_impl.active_tree(), 2); |
| 8765 std::unique_ptr<LayerImpl> grandchild = |
8741 LayerImpl::Create(host_impl.active_tree(), 3); | 8766 LayerImpl::Create(host_impl.active_tree(), 3); |
8742 | 8767 |
8743 scoped_ptr<FakePictureLayerImpl> greatgrandchild( | 8768 std::unique_ptr<FakePictureLayerImpl> greatgrandchild( |
8744 FakePictureLayerImpl::Create(host_impl.active_tree(), 4)); | 8769 FakePictureLayerImpl::Create(host_impl.active_tree(), 4)); |
8745 | 8770 |
8746 child->SetDrawsContent(true); | 8771 child->SetDrawsContent(true); |
8747 grandchild->SetDrawsContent(true); | 8772 grandchild->SetDrawsContent(true); |
8748 greatgrandchild->SetDrawsContent(true); | 8773 greatgrandchild->SetDrawsContent(true); |
8749 | 8774 |
8750 SetLayerPropertiesForTesting(root.get(), identity, gfx::Point3F(), | 8775 SetLayerPropertiesForTesting(root.get(), identity, gfx::Point3F(), |
8751 gfx::PointF(), gfx::Size(100, 100), true, false, | 8776 gfx::PointF(), gfx::Size(100, 100), true, false, |
8752 true); | 8777 true); |
8753 SetLayerPropertiesForTesting(child.get(), identity, gfx::Point3F(), | 8778 SetLayerPropertiesForTesting(child.get(), identity, gfx::Point3F(), |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8818 child_ptr->SetOpacity(0.7f); | 8843 child_ptr->SetOpacity(0.7f); |
8819 host_impl.active_tree()->property_trees()->needs_rebuild = true; | 8844 host_impl.active_tree()->property_trees()->needs_rebuild = true; |
8820 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); | 8845 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); |
8821 EXPECT_EQ(gfx::Rect(0, 0), grandchild_ptr->visible_layer_rect()); | 8846 EXPECT_EQ(gfx::Rect(0, 0), grandchild_ptr->visible_layer_rect()); |
8822 root_ptr->SetOpacity(1.f); | 8847 root_ptr->SetOpacity(1.f); |
8823 | 8848 |
8824 child_ptr->SetOpacity(0.f); | 8849 child_ptr->SetOpacity(0.f); |
8825 // Now, even though child has zero opacity, we will configure |grandchild| and | 8850 // Now, even though child has zero opacity, we will configure |grandchild| and |
8826 // |greatgrandchild| in several ways that should force the subtree to be | 8851 // |greatgrandchild| in several ways that should force the subtree to be |
8827 // processed anyhow. | 8852 // processed anyhow. |
8828 std::vector<scoped_ptr<CopyOutputRequest>> requests; | 8853 std::vector<std::unique_ptr<CopyOutputRequest>> requests; |
8829 requests.push_back(CopyOutputRequest::CreateEmptyRequest()); | 8854 requests.push_back(CopyOutputRequest::CreateEmptyRequest()); |
8830 | 8855 |
8831 grandchild_ptr->PassCopyRequests(&requests); | 8856 grandchild_ptr->PassCopyRequests(&requests); |
8832 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; | 8857 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; |
8833 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); | 8858 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); |
8834 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); | 8859 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); |
8835 requests.clear(); | 8860 requests.clear(); |
8836 grandchild_ptr->PassCopyRequests(&requests); | 8861 grandchild_ptr->PassCopyRequests(&requests); |
8837 child_ptr->SetOpacity(1.f); | 8862 child_ptr->SetOpacity(1.f); |
8838 | 8863 |
8839 // A double sided render surface with backface visible should not be skipped | 8864 // A double sided render surface with backface visible should not be skipped |
8840 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); | 8865 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); |
8841 child_ptr->SetHasRenderSurface(true); | 8866 child_ptr->SetHasRenderSurface(true); |
8842 child_ptr->SetDoubleSided(true); | 8867 child_ptr->SetDoubleSided(true); |
8843 child_ptr->SetTransform(rotate_back_and_translate); | 8868 child_ptr->SetTransform(rotate_back_and_translate); |
8844 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; | 8869 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; |
8845 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); | 8870 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); |
8846 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); | 8871 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); |
8847 child_ptr->SetTransform(identity); | 8872 child_ptr->SetTransform(identity); |
8848 | 8873 |
8849 scoped_ptr<KeyframedTransformAnimationCurve> curve( | 8874 std::unique_ptr<KeyframedTransformAnimationCurve> curve( |
8850 KeyframedTransformAnimationCurve::Create()); | 8875 KeyframedTransformAnimationCurve::Create()); |
8851 TransformOperations start; | 8876 TransformOperations start; |
8852 start.AppendTranslate(1.f, 2.f, 3.f); | 8877 start.AppendTranslate(1.f, 2.f, 3.f); |
8853 gfx::Transform transform; | 8878 gfx::Transform transform; |
8854 transform.Scale3d(1.0, 2.0, 3.0); | 8879 transform.Scale3d(1.0, 2.0, 3.0); |
8855 TransformOperations operation; | 8880 TransformOperations operation; |
8856 operation.AppendMatrix(transform); | 8881 operation.AppendMatrix(transform); |
8857 curve->AddKeyframe( | 8882 curve->AddKeyframe( |
8858 TransformKeyframe::Create(base::TimeDelta(), start, nullptr)); | 8883 TransformKeyframe::Create(base::TimeDelta(), start, nullptr)); |
8859 curve->AddKeyframe(TransformKeyframe::Create( | 8884 curve->AddKeyframe(TransformKeyframe::Create( |
8860 base::TimeDelta::FromSecondsD(1.0), operation, nullptr)); | 8885 base::TimeDelta::FromSecondsD(1.0), operation, nullptr)); |
8861 scoped_ptr<Animation> transform_animation( | 8886 std::unique_ptr<Animation> transform_animation( |
8862 Animation::Create(std::move(curve), 3, 3, TargetProperty::TRANSFORM)); | 8887 Animation::Create(std::move(curve), 3, 3, TargetProperty::TRANSFORM)); |
8863 scoped_refptr<AnimationPlayer> player(AnimationPlayer::Create(1)); | 8888 scoped_refptr<AnimationPlayer> player(AnimationPlayer::Create(1)); |
8864 host_impl.active_tree()->animation_host()->RegisterPlayerForLayer( | 8889 host_impl.active_tree()->animation_host()->RegisterPlayerForLayer( |
8865 root_ptr->id(), player.get()); | 8890 root_ptr->id(), player.get()); |
8866 host_impl.active_tree() | 8891 host_impl.active_tree() |
8867 ->animation_host() | 8892 ->animation_host() |
8868 ->GetControllerForLayerId(root_ptr->id()) | 8893 ->GetControllerForLayerId(root_ptr->id()) |
8869 ->AddAnimation(std::move(transform_animation)); | 8894 ->AddAnimation(std::move(transform_animation)); |
8870 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); | 8895 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); |
8871 child_ptr->SetScrollClipLayer(root_ptr->id()); | 8896 child_ptr->SetScrollClipLayer(root_ptr->id()); |
8872 root_ptr->SetTransform(singular); | 8897 root_ptr->SetTransform(singular); |
8873 child_ptr->SetTransform(singular); | 8898 child_ptr->SetTransform(singular); |
8874 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; | 8899 root_ptr->layer_tree_impl()->property_trees()->needs_rebuild = true; |
8875 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); | 8900 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); |
8876 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); | 8901 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); |
8877 | 8902 |
8878 host_impl.active_tree()->animation_host()->UnregisterPlayerForLayer( | 8903 host_impl.active_tree()->animation_host()->UnregisterPlayerForLayer( |
8879 root_ptr->id(), player.get()); | 8904 root_ptr->id(), player.get()); |
8880 } | 8905 } |
8881 | 8906 |
8882 TEST_F(LayerTreeHostCommonTest, SkippingPendingLayerImpl) { | 8907 TEST_F(LayerTreeHostCommonTest, SkippingPendingLayerImpl) { |
8883 FakeImplTaskRunnerProvider task_runner_provider; | 8908 FakeImplTaskRunnerProvider task_runner_provider; |
8884 TestSharedBitmapManager shared_bitmap_manager; | 8909 TestSharedBitmapManager shared_bitmap_manager; |
8885 TestTaskGraphRunner task_graph_runner; | 8910 TestTaskGraphRunner task_graph_runner; |
8886 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, | 8911 FakeLayerTreeHostImpl host_impl(&task_runner_provider, &shared_bitmap_manager, |
8887 &task_graph_runner); | 8912 &task_graph_runner); |
8888 | 8913 |
8889 gfx::Transform identity; | 8914 gfx::Transform identity; |
8890 host_impl.CreatePendingTree(); | 8915 host_impl.CreatePendingTree(); |
8891 scoped_ptr<LayerImpl> root = LayerImpl::Create(host_impl.pending_tree(), 1); | 8916 std::unique_ptr<LayerImpl> root = |
8892 scoped_ptr<LayerImpl> child = LayerImpl::Create(host_impl.pending_tree(), 2); | 8917 LayerImpl::Create(host_impl.pending_tree(), 1); |
8893 scoped_ptr<LayerImpl> grandchild = | 8918 std::unique_ptr<LayerImpl> child = |
| 8919 LayerImpl::Create(host_impl.pending_tree(), 2); |
| 8920 std::unique_ptr<LayerImpl> grandchild = |
8894 LayerImpl::Create(host_impl.pending_tree(), 3); | 8921 LayerImpl::Create(host_impl.pending_tree(), 3); |
8895 | 8922 |
8896 scoped_ptr<FakePictureLayerImpl> greatgrandchild( | 8923 std::unique_ptr<FakePictureLayerImpl> greatgrandchild( |
8897 FakePictureLayerImpl::Create(host_impl.pending_tree(), 4)); | 8924 FakePictureLayerImpl::Create(host_impl.pending_tree(), 4)); |
8898 | 8925 |
8899 child->SetDrawsContent(true); | 8926 child->SetDrawsContent(true); |
8900 grandchild->SetDrawsContent(true); | 8927 grandchild->SetDrawsContent(true); |
8901 greatgrandchild->SetDrawsContent(true); | 8928 greatgrandchild->SetDrawsContent(true); |
8902 | 8929 |
8903 SetLayerPropertiesForTesting(root.get(), identity, gfx::Point3F(), | 8930 SetLayerPropertiesForTesting(root.get(), identity, gfx::Point3F(), |
8904 gfx::PointF(), gfx::Size(100, 100), true, false, | 8931 gfx::PointF(), gfx::Size(100, 100), true, false, |
8905 true); | 8932 true); |
8906 SetLayerPropertiesForTesting(child.get(), identity, gfx::Point3F(), | 8933 SetLayerPropertiesForTesting(child.get(), identity, gfx::Point3F(), |
8907 gfx::PointF(), gfx::Size(10, 10), true, false, | 8934 gfx::PointF(), gfx::Size(10, 10), true, false, |
8908 false); | 8935 false); |
8909 SetLayerPropertiesForTesting(grandchild.get(), identity, gfx::Point3F(), | 8936 SetLayerPropertiesForTesting(grandchild.get(), identity, gfx::Point3F(), |
8910 gfx::PointF(), gfx::Size(10, 10), true, false, | 8937 gfx::PointF(), gfx::Size(10, 10), true, false, |
8911 false); | 8938 false); |
8912 | 8939 |
8913 LayerImpl* root_ptr = root.get(); | 8940 LayerImpl* root_ptr = root.get(); |
8914 LayerImpl* grandchild_ptr = grandchild.get(); | 8941 LayerImpl* grandchild_ptr = grandchild.get(); |
8915 | 8942 |
8916 child->AddChild(std::move(grandchild)); | 8943 child->AddChild(std::move(grandchild)); |
8917 root->AddChild(std::move(child)); | 8944 root->AddChild(std::move(child)); |
8918 | 8945 |
8919 host_impl.pending_tree()->SetRootLayer(std::move(root)); | 8946 host_impl.pending_tree()->SetRootLayer(std::move(root)); |
8920 | 8947 |
8921 // Check the non-skipped case. | 8948 // Check the non-skipped case. |
8922 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); | 8949 ExecuteCalculateDrawPropertiesWithPropertyTrees(root_ptr); |
8923 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); | 8950 EXPECT_EQ(gfx::Rect(10, 10), grandchild_ptr->visible_layer_rect()); |
8924 | 8951 |
8925 scoped_ptr<KeyframedFloatAnimationCurve> curve( | 8952 std::unique_ptr<KeyframedFloatAnimationCurve> curve( |
8926 KeyframedFloatAnimationCurve::Create()); | 8953 KeyframedFloatAnimationCurve::Create()); |
8927 scoped_ptr<TimingFunction> func = EaseTimingFunction::Create(); | 8954 std::unique_ptr<TimingFunction> func = EaseTimingFunction::Create(); |
8928 curve->AddKeyframe( | 8955 curve->AddKeyframe( |
8929 FloatKeyframe::Create(base::TimeDelta(), 0.9f, std::move(func))); | 8956 FloatKeyframe::Create(base::TimeDelta(), 0.9f, std::move(func))); |
8930 curve->AddKeyframe( | 8957 curve->AddKeyframe( |
8931 FloatKeyframe::Create(base::TimeDelta::FromSecondsD(1.0), 0.3f, nullptr)); | 8958 FloatKeyframe::Create(base::TimeDelta::FromSecondsD(1.0), 0.3f, nullptr)); |
8932 scoped_ptr<Animation> animation( | 8959 std::unique_ptr<Animation> animation( |
8933 Animation::Create(std::move(curve), 3, 3, TargetProperty::OPACITY)); | 8960 Animation::Create(std::move(curve), 3, 3, TargetProperty::OPACITY)); |
8934 scoped_refptr<AnimationPlayer> player(AnimationPlayer::Create(1)); | 8961 scoped_refptr<AnimationPlayer> player(AnimationPlayer::Create(1)); |
8935 host_impl.active_tree()->animation_host()->RegisterPlayerForLayer( | 8962 host_impl.active_tree()->animation_host()->RegisterPlayerForLayer( |
8936 root_ptr->id(), player.get()); | 8963 root_ptr->id(), player.get()); |
8937 host_impl.active_tree() | 8964 host_impl.active_tree() |
8938 ->animation_host() | 8965 ->animation_host() |
8939 ->GetControllerForLayerId(root_ptr->id()) | 8966 ->GetControllerForLayerId(root_ptr->id()) |
8940 ->AddAnimation(std::move(animation)); | 8967 ->AddAnimation(std::move(animation)); |
8941 root_ptr->SetOpacity(0); | 8968 root_ptr->SetOpacity(0); |
8942 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); | 8969 grandchild_ptr->set_visible_layer_rect(gfx::Rect()); |
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9179 AddChild<LayerImpl>(between_clip_parent_and_child); | 9206 AddChild<LayerImpl>(between_clip_parent_and_child); |
9180 LayerImpl* test_layer = AddChild<LayerImpl>(render_surface); | 9207 LayerImpl* test_layer = AddChild<LayerImpl>(render_surface); |
9181 | 9208 |
9182 const gfx::Transform identity_matrix; | 9209 const gfx::Transform identity_matrix; |
9183 gfx::Transform translate; | 9210 gfx::Transform translate; |
9184 translate.Translate(2.0, 2.0); | 9211 translate.Translate(2.0, 2.0); |
9185 | 9212 |
9186 clip_parent->SetMasksToBounds(true); | 9213 clip_parent->SetMasksToBounds(true); |
9187 test_layer->SetDrawsContent(true); | 9214 test_layer->SetDrawsContent(true); |
9188 render_surface->SetClipParent(clip_parent); | 9215 render_surface->SetClipParent(clip_parent); |
9189 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9216 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9190 clip_children->insert(render_surface); | 9217 clip_children->insert(render_surface); |
9191 clip_parent->SetClipChildren(clip_children.release()); | 9218 clip_parent->SetClipChildren(clip_children.release()); |
9192 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9219 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9193 gfx::PointF(), gfx::Size(30, 30), true, false, | 9220 gfx::PointF(), gfx::Size(30, 30), true, false, |
9194 true); | 9221 true); |
9195 SetLayerPropertiesForTesting(clip_parent, translate, gfx::Point3F(), | 9222 SetLayerPropertiesForTesting(clip_parent, translate, gfx::Point3F(), |
9196 gfx::PointF(), gfx::Size(30, 30), true, false, | 9223 gfx::PointF(), gfx::Size(30, 30), true, false, |
9197 false); | 9224 false); |
9198 SetLayerPropertiesForTesting(between_clip_parent_and_child, translate, | 9225 SetLayerPropertiesForTesting(between_clip_parent_and_child, translate, |
9199 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), | 9226 gfx::Point3F(), gfx::PointF(), gfx::Size(30, 30), |
(...skipping 22 matching lines...) Expand all Loading... |
9222 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); | 9249 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); |
9223 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); | 9250 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); |
9224 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); | 9251 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); |
9225 LayerImpl* child = AddChild<LayerImpl>(render_surface); | 9252 LayerImpl* child = AddChild<LayerImpl>(render_surface); |
9226 | 9253 |
9227 const gfx::Transform identity_matrix; | 9254 const gfx::Transform identity_matrix; |
9228 | 9255 |
9229 clip_child->SetDrawsContent(true); | 9256 clip_child->SetDrawsContent(true); |
9230 child->SetDrawsContent(true); | 9257 child->SetDrawsContent(true); |
9231 clip_child->SetClipParent(clip_parent); | 9258 clip_child->SetClipParent(clip_parent); |
9232 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9259 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9233 clip_children->insert(clip_child); | 9260 clip_children->insert(clip_child); |
9234 clip_parent->SetClipChildren(clip_children.release()); | 9261 clip_parent->SetClipChildren(clip_children.release()); |
9235 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9262 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9236 gfx::PointF(), gfx::Size(30, 10), true, false, | 9263 gfx::PointF(), gfx::Size(30, 10), true, false, |
9237 true); | 9264 true); |
9238 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 9265 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
9239 gfx::PointF(), gfx::Size(30, 30), true, false, | 9266 gfx::PointF(), gfx::Size(30, 30), true, false, |
9240 false); | 9267 false); |
9241 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), | 9268 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), |
9242 gfx::PointF(), gfx::Size(10, 15), true, false, | 9269 gfx::PointF(), gfx::Size(10, 15), true, false, |
(...skipping 19 matching lines...) Expand all Loading... |
9262 LayerImpl* test_layer2 = AddChild<LayerImpl>(clip_child); | 9289 LayerImpl* test_layer2 = AddChild<LayerImpl>(clip_child); |
9263 | 9290 |
9264 const gfx::Transform identity_matrix; | 9291 const gfx::Transform identity_matrix; |
9265 root->SetMasksToBounds(true); | 9292 root->SetMasksToBounds(true); |
9266 render_surface->SetMasksToBounds(true); | 9293 render_surface->SetMasksToBounds(true); |
9267 render_surface->SetDrawsContent(true); | 9294 render_surface->SetDrawsContent(true); |
9268 clip_child->SetDrawsContent(true); | 9295 clip_child->SetDrawsContent(true); |
9269 test_layer1->SetDrawsContent(true); | 9296 test_layer1->SetDrawsContent(true); |
9270 test_layer2->SetDrawsContent(true); | 9297 test_layer2->SetDrawsContent(true); |
9271 clip_child->SetClipParent(clip_parent); | 9298 clip_child->SetClipParent(clip_parent); |
9272 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9299 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9273 clip_children->insert(clip_child); | 9300 clip_children->insert(clip_child); |
9274 clip_parent->SetClipChildren(clip_children.release()); | 9301 clip_parent->SetClipChildren(clip_children.release()); |
9275 | 9302 |
9276 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9303 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9277 gfx::PointF(), gfx::Size(30, 30), true, false, | 9304 gfx::PointF(), gfx::Size(30, 30), true, false, |
9278 true); | 9305 true); |
9279 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 9306 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
9280 gfx::PointF(), gfx::Size(30, 30), true, false, | 9307 gfx::PointF(), gfx::Size(30, 30), true, false, |
9281 false); | 9308 false); |
9282 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), | 9309 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), |
(...skipping 22 matching lines...) Expand all Loading... |
9305 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); | 9332 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); |
9306 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); | 9333 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); |
9307 | 9334 |
9308 const gfx::Transform identity_matrix; | 9335 const gfx::Transform identity_matrix; |
9309 clip_parent->SetDrawsContent(true); | 9336 clip_parent->SetDrawsContent(true); |
9310 render_surface->SetMasksToBounds(true); | 9337 render_surface->SetMasksToBounds(true); |
9311 render_surface->SetDrawsContent(true); | 9338 render_surface->SetDrawsContent(true); |
9312 clip_child->SetDrawsContent(true); | 9339 clip_child->SetDrawsContent(true); |
9313 | 9340 |
9314 clip_child->SetClipParent(clip_parent); | 9341 clip_child->SetClipParent(clip_parent); |
9315 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9342 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9316 clip_children->insert(clip_child); | 9343 clip_children->insert(clip_child); |
9317 clip_parent->SetClipChildren(clip_children.release()); | 9344 clip_parent->SetClipChildren(clip_children.release()); |
9318 | 9345 |
9319 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9346 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9320 gfx::PointF(), gfx::Size(50, 50), true, false, | 9347 gfx::PointF(), gfx::Size(50, 50), true, false, |
9321 true); | 9348 true); |
9322 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 9349 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
9323 gfx::PointF(), gfx::Size(50, 50), true, false, | 9350 gfx::PointF(), gfx::Size(50, 50), true, false, |
9324 false); | 9351 false); |
9325 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), | 9352 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), |
(...skipping 23 matching lines...) Expand all Loading... |
9349 LayerImpl* unclipped_desc_surface2 = | 9376 LayerImpl* unclipped_desc_surface2 = |
9350 AddChild<LayerImpl>(unclipped_desc_surface); | 9377 AddChild<LayerImpl>(unclipped_desc_surface); |
9351 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface2); | 9378 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface2); |
9352 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); | 9379 LayerImpl* clipped_surface = AddChild<LayerImpl>(clip_child); |
9353 | 9380 |
9354 unclipped_surface->SetDrawsContent(true); | 9381 unclipped_surface->SetDrawsContent(true); |
9355 unclipped_desc_surface->SetDrawsContent(true); | 9382 unclipped_desc_surface->SetDrawsContent(true); |
9356 unclipped_desc_surface2->SetDrawsContent(true); | 9383 unclipped_desc_surface2->SetDrawsContent(true); |
9357 clipped_surface->SetDrawsContent(true); | 9384 clipped_surface->SetDrawsContent(true); |
9358 clip_child->SetClipParent(clip_parent); | 9385 clip_child->SetClipParent(clip_parent); |
9359 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9386 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9360 clip_children->insert(clip_child); | 9387 clip_children->insert(clip_child); |
9361 clip_parent->SetClipChildren(clip_children.release()); | 9388 clip_parent->SetClipChildren(clip_children.release()); |
9362 | 9389 |
9363 gfx::Transform identity_matrix; | 9390 gfx::Transform identity_matrix; |
9364 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9391 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9365 gfx::PointF(), gfx::Size(80, 80), true, false, | 9392 gfx::PointF(), gfx::Size(80, 80), true, false, |
9366 true); | 9393 true); |
9367 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, | 9394 SetLayerPropertiesForTesting(unclipped_surface, identity_matrix, |
9368 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), | 9395 gfx::Point3F(), gfx::PointF(), gfx::Size(50, 50), |
9369 true, false, true); | 9396 true, false, true); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9403 LayerImpl* root = root_layer(); | 9430 LayerImpl* root = root_layer(); |
9404 LayerImpl* surface = AddChildToRoot<LayerImpl>(); | 9431 LayerImpl* surface = AddChildToRoot<LayerImpl>(); |
9405 LayerImpl* clip_layer = AddChild<LayerImpl>(surface); | 9432 LayerImpl* clip_layer = AddChild<LayerImpl>(surface); |
9406 LayerImpl* clip_parent = AddChild<LayerImpl>(clip_layer); | 9433 LayerImpl* clip_parent = AddChild<LayerImpl>(clip_layer); |
9407 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); | 9434 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); |
9408 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); | 9435 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); |
9409 | 9436 |
9410 clip_child->SetDrawsContent(true); | 9437 clip_child->SetDrawsContent(true); |
9411 unclipped_desc_surface->SetDrawsContent(true); | 9438 unclipped_desc_surface->SetDrawsContent(true); |
9412 clip_child->SetClipParent(clip_parent); | 9439 clip_child->SetClipParent(clip_parent); |
9413 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9440 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9414 clip_children->insert(clip_child); | 9441 clip_children->insert(clip_child); |
9415 clip_parent->SetClipChildren(clip_children.release()); | 9442 clip_parent->SetClipChildren(clip_children.release()); |
9416 | 9443 |
9417 gfx::Transform identity_matrix; | 9444 gfx::Transform identity_matrix; |
9418 gfx::Transform translate; | 9445 gfx::Transform translate; |
9419 translate.Translate(10, 10); | 9446 translate.Translate(10, 10); |
9420 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9447 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9421 gfx::PointF(), gfx::Size(100, 100), true, false, | 9448 gfx::PointF(), gfx::Size(100, 100), true, false, |
9422 true); | 9449 true); |
9423 SetLayerPropertiesForTesting(surface, identity_matrix, gfx::Point3F(), | 9450 SetLayerPropertiesForTesting(surface, identity_matrix, gfx::Point3F(), |
(...skipping 24 matching lines...) Expand all Loading... |
9448 LayerImpl* root = root_layer(); | 9475 LayerImpl* root = root_layer(); |
9449 LayerImpl* surface = AddChildToRoot<LayerImpl>(); | 9476 LayerImpl* surface = AddChildToRoot<LayerImpl>(); |
9450 LayerImpl* clip_layer = AddChild<LayerImpl>(surface); | 9477 LayerImpl* clip_layer = AddChild<LayerImpl>(surface); |
9451 LayerImpl* clip_parent = AddChild<LayerImpl>(clip_layer); | 9478 LayerImpl* clip_parent = AddChild<LayerImpl>(clip_layer); |
9452 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); | 9479 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent); |
9453 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); | 9480 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface); |
9454 | 9481 |
9455 clip_child->SetDrawsContent(true); | 9482 clip_child->SetDrawsContent(true); |
9456 unclipped_desc_surface->SetDrawsContent(true); | 9483 unclipped_desc_surface->SetDrawsContent(true); |
9457 clip_child->SetClipParent(clip_parent); | 9484 clip_child->SetClipParent(clip_parent); |
9458 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9485 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9459 clip_children->insert(clip_child); | 9486 clip_children->insert(clip_child); |
9460 clip_parent->SetClipChildren(clip_children.release()); | 9487 clip_parent->SetClipChildren(clip_children.release()); |
9461 | 9488 |
9462 gfx::Transform identity_matrix; | 9489 gfx::Transform identity_matrix; |
9463 gfx::Transform scale; | 9490 gfx::Transform scale; |
9464 scale.Scale(2, 2); | 9491 scale.Scale(2, 2); |
9465 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9492 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9466 gfx::PointF(), gfx::Size(100, 100), true, false, | 9493 gfx::PointF(), gfx::Size(100, 100), true, false, |
9467 true); | 9494 true); |
9468 SetLayerPropertiesForTesting(surface, scale, gfx::Point3F(), gfx::PointF(), | 9495 SetLayerPropertiesForTesting(surface, scale, gfx::Point3F(), gfx::PointF(), |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9519 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); | 9546 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); |
9520 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); | 9547 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); |
9521 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); | 9548 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); |
9522 | 9549 |
9523 const gfx::Transform identity_matrix; | 9550 const gfx::Transform identity_matrix; |
9524 clip_parent->SetMasksToBounds(true); | 9551 clip_parent->SetMasksToBounds(true); |
9525 render_surface->SetMasksToBounds(true); | 9552 render_surface->SetMasksToBounds(true); |
9526 render_surface->SetDrawsContent(true); | 9553 render_surface->SetDrawsContent(true); |
9527 clip_child->SetDrawsContent(true); | 9554 clip_child->SetDrawsContent(true); |
9528 clip_child->SetClipParent(clip_parent); | 9555 clip_child->SetClipParent(clip_parent); |
9529 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9556 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9530 clip_children->insert(clip_child); | 9557 clip_children->insert(clip_child); |
9531 clip_parent->SetClipChildren(clip_children.release()); | 9558 clip_parent->SetClipChildren(clip_children.release()); |
9532 | 9559 |
9533 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9560 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9534 gfx::PointF(), gfx::Size(30, 30), true, false, | 9561 gfx::PointF(), gfx::Size(30, 30), true, false, |
9535 true); | 9562 true); |
9536 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), | 9563 SetLayerPropertiesForTesting(clip_parent, identity_matrix, gfx::Point3F(), |
9537 gfx::PointF(10.f, 10.f), gfx::Size(40, 40), true, | 9564 gfx::PointF(10.f, 10.f), gfx::Size(40, 40), true, |
9538 false, false); | 9565 false, false); |
9539 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), | 9566 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9603 } | 9630 } |
9604 | 9631 |
9605 TEST_F(LayerTreeHostCommonTest, TwoUnclippedRenderSurfaces) { | 9632 TEST_F(LayerTreeHostCommonTest, TwoUnclippedRenderSurfaces) { |
9606 LayerImpl* root = root_layer(); | 9633 LayerImpl* root = root_layer(); |
9607 LayerImpl* render_surface1 = AddChild<LayerImpl>(root); | 9634 LayerImpl* render_surface1 = AddChild<LayerImpl>(root); |
9608 LayerImpl* render_surface2 = AddChild<LayerImpl>(render_surface1); | 9635 LayerImpl* render_surface2 = AddChild<LayerImpl>(render_surface1); |
9609 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface2); | 9636 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface2); |
9610 | 9637 |
9611 const gfx::Transform identity_matrix; | 9638 const gfx::Transform identity_matrix; |
9612 clip_child->SetClipParent(root); | 9639 clip_child->SetClipParent(root); |
9613 scoped_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); | 9640 std::unique_ptr<std::set<LayerImpl*>> clip_children(new std::set<LayerImpl*>); |
9614 clip_children->insert(clip_child); | 9641 clip_children->insert(clip_child); |
9615 root->SetClipChildren(clip_children.release()); | 9642 root->SetClipChildren(clip_children.release()); |
9616 root->SetMasksToBounds(true); | 9643 root->SetMasksToBounds(true); |
9617 render_surface1->SetDrawsContent(true); | 9644 render_surface1->SetDrawsContent(true); |
9618 render_surface2->SetDrawsContent(true); | 9645 render_surface2->SetDrawsContent(true); |
9619 | 9646 |
9620 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), | 9647 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), |
9621 gfx::PointF(), gfx::Size(30, 30), true, false, | 9648 gfx::PointF(), gfx::Size(30, 30), true, false, |
9622 true); | 9649 true); |
9623 SetLayerPropertiesForTesting(render_surface1, identity_matrix, gfx::Point3F(), | 9650 SetLayerPropertiesForTesting(render_surface1, identity_matrix, gfx::Point3F(), |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9941 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index()); | 9968 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index()); |
9942 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index()); | 9969 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index()); |
9943 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index()); | 9970 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index()); |
9944 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index()); | 9971 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index()); |
9945 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index()); | 9972 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index()); |
9946 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index()); | 9973 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index()); |
9947 } | 9974 } |
9948 | 9975 |
9949 } // namespace | 9976 } // namespace |
9950 } // namespace cc | 9977 } // namespace cc |
OLD | NEW |