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

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

Issue 1868003002: cc: Move RenderTarget Information to Effect Tree (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/trees/layer_tree_host_common.cc ('k') | cc/trees/layer_tree_host_unittest_occlusion.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/trees/layer_tree_host_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>
(...skipping 442 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 parent_composite_transform, 453 parent_composite_transform,
454 draw_property_utils::ScreenSpaceTransform(child, tree)); 454 draw_property_utils::ScreenSpaceTransform(child, tree));
455 EXPECT_TRANSFORMATION_MATRIX_EQ( 455 EXPECT_TRANSFORMATION_MATRIX_EQ(
456 parent_composite_transform, 456 parent_composite_transform,
457 draw_property_utils::DrawTransform(grand_child, tree)); 457 draw_property_utils::DrawTransform(grand_child, tree));
458 EXPECT_TRANSFORMATION_MATRIX_EQ( 458 EXPECT_TRANSFORMATION_MATRIX_EQ(
459 parent_composite_transform, 459 parent_composite_transform,
460 draw_property_utils::ScreenSpaceTransform(grand_child, tree)); 460 draw_property_utils::ScreenSpaceTransform(grand_child, tree));
461 } 461 }
462 462
463 // Render target should get cleared when subtree is skipped.
464 TEST_F(LayerTreeHostCommonTest, ClearRenderTargetForSkippedLayers) {
465 LayerImpl* root = root_layer();
466 LayerImpl* parent = AddChildToRoot<LayerImpl>();
467 LayerImpl* child = AddChild<LayerImpl>(parent);
468 child->SetDrawsContent(true);
469
470 gfx::Transform identity_matrix;
471 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(),
472 gfx::PointF(), gfx::Size(1, 2), true, false,
473 true);
474 SetLayerPropertiesForTesting(parent, identity_matrix, gfx::Point3F(),
475 gfx::PointF(), gfx::Size(1, 2), true, false,
476 true);
477 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(),
478 gfx::PointF(), gfx::Size(1, 2), true, false,
479 false);
480
481 ExecuteCalculateDrawProperties(root);
482 ASSERT_TRUE(parent->render_surface());
483 EXPECT_EQ(parent, child->render_target());
484
485 // child is skipped when root's opacity is set to 0. So, its render target
486 // should be reset.
487 root->OnOpacityAnimated(0.0f);
488 ExecuteCalculateDrawProperties(root);
489 EXPECT_FALSE(child->render_target());
490 }
491
492 TEST_F(LayerTreeHostCommonTest, TransformsForSingleRenderSurface) { 463 TEST_F(LayerTreeHostCommonTest, TransformsForSingleRenderSurface) {
493 LayerImpl* root = root_layer(); 464 LayerImpl* root = root_layer();
494 LayerImpl* parent = AddChildToRoot<LayerImpl>(); 465 LayerImpl* parent = AddChildToRoot<LayerImpl>();
495 LayerImpl* child = AddChild<LayerImpl>(parent); 466 LayerImpl* child = AddChild<LayerImpl>(parent);
496 LayerImpl* grand_child = AddChild<LayerImpl>(child); 467 LayerImpl* grand_child = AddChild<LayerImpl>(child);
497 grand_child->SetDrawsContent(true); 468 grand_child->SetDrawsContent(true);
498 469
499 gfx::Transform identity_matrix; 470 gfx::Transform identity_matrix;
500 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(), 471 SetLayerPropertiesForTesting(root, identity_matrix, gfx::Point3F(),
501 gfx::PointF(), gfx::Size(1, 2), true, false, 472 gfx::PointF(), gfx::Size(1, 2), true, false,
(...skipping 26 matching lines...) Expand all
528 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(), 499 SetLayerPropertiesForTesting(child, identity_matrix, gfx::Point3F(),
529 gfx::PointF(), gfx::Size(16, 18), true, false, 500 gfx::PointF(), gfx::Size(16, 18), true, false,
530 true); 501 true);
531 SetLayerPropertiesForTesting(grand_child, identity_matrix, gfx::Point3F(), 502 SetLayerPropertiesForTesting(grand_child, identity_matrix, gfx::Point3F(),
532 gfx::PointF(), gfx::Size(8, 10), true, false, 503 gfx::PointF(), gfx::Size(8, 10), true, false,
533 false); 504 false);
534 ExecuteCalculateDrawProperties(root); 505 ExecuteCalculateDrawProperties(root);
535 506
536 // Render surface should have been created now. 507 // Render surface should have been created now.
537 ASSERT_TRUE(child->render_surface()); 508 ASSERT_TRUE(child->render_surface());
538 ASSERT_EQ(child, child->render_target()); 509 ASSERT_EQ(child->render_surface(), child->render_target());
539 510
540 // The child layer's draw transform should refer to its new render surface. 511 // The child layer's draw transform should refer to its new render surface.
541 // The screen-space transform, however, should still refer to the root. 512 // The screen-space transform, however, should still refer to the root.
542 EXPECT_TRANSFORMATION_MATRIX_EQ(surface_sublayer_transform, 513 EXPECT_TRANSFORMATION_MATRIX_EQ(surface_sublayer_transform,
543 child->DrawTransform()); 514 child->DrawTransform());
544 EXPECT_TRANSFORMATION_MATRIX_EQ(parent_composite_transform, 515 EXPECT_TRANSFORMATION_MATRIX_EQ(parent_composite_transform,
545 child->ScreenSpaceTransform()); 516 child->ScreenSpaceTransform());
546 517
547 // Because the grand_child is the only drawable content, the child's render 518 // Because the grand_child is the only drawable content, the child's render
548 // surface will tighten its bounds to the grand_child. The scale at which the 519 // surface will tighten its bounds to the grand_child. The scale at which the
549 // surface's subtree is drawn must be removed from the composite transform. 520 // surface's subtree is drawn must be removed from the composite transform.
550 EXPECT_TRANSFORMATION_MATRIX_EQ( 521 EXPECT_TRANSFORMATION_MATRIX_EQ(surface_sublayer_composite_transform,
551 surface_sublayer_composite_transform, 522 child->render_target()->draw_transform());
552 child->render_target()->render_surface()->draw_transform());
553 523
554 // The screen space is the same as the target since the child surface draws 524 // The screen space is the same as the target since the child surface draws
555 // into the root. 525 // into the root.
556 EXPECT_TRANSFORMATION_MATRIX_EQ( 526 EXPECT_TRANSFORMATION_MATRIX_EQ(
557 surface_sublayer_composite_transform, 527 surface_sublayer_composite_transform,
558 child->render_target()->render_surface()->screen_space_transform()); 528 child->render_target()->screen_space_transform());
559 } 529 }
560 530
561 TEST_F(LayerTreeHostCommonTest, TransformsWhenCannotRenderToSeparateSurface) { 531 TEST_F(LayerTreeHostCommonTest, TransformsWhenCannotRenderToSeparateSurface) {
562 LayerImpl* root = root_layer(); 532 LayerImpl* root = root_layer();
563 LayerImpl* parent = AddChildToRoot<LayerImpl>(); 533 LayerImpl* parent = AddChildToRoot<LayerImpl>();
564 LayerImpl* child = AddChild<LayerImpl>(parent); 534 LayerImpl* child = AddChild<LayerImpl>(parent);
565 LayerImpl* grand_child = AddChild<LayerImpl>(child); 535 LayerImpl* grand_child = AddChild<LayerImpl>(child);
566 grand_child->SetDrawsContent(true); 536 grand_child->SetDrawsContent(true);
567 537
568 gfx::Transform identity_matrix; 538 gfx::Transform identity_matrix;
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
664 false, false); 634 false, false);
665 SetLayerPropertiesForTesting(child_replica.get(), replica_layer_transform, 635 SetLayerPropertiesForTesting(child_replica.get(), replica_layer_transform,
666 gfx::Point3F(), gfx::PointF(), gfx::Size(), true, 636 gfx::Point3F(), gfx::PointF(), gfx::Size(), true,
667 false, false); 637 false, false);
668 child->SetReplicaLayer(std::move(child_replica)); 638 child->SetReplicaLayer(std::move(child_replica));
669 639
670 ExecuteCalculateDrawProperties(root); 640 ExecuteCalculateDrawProperties(root);
671 641
672 // Render surface should have been created now. 642 // Render surface should have been created now.
673 ASSERT_TRUE(child->render_surface()); 643 ASSERT_TRUE(child->render_surface());
674 ASSERT_EQ(child, child->render_target()); 644 ASSERT_EQ(child->render_surface(), child->render_target());
675 645
676 EXPECT_TRANSFORMATION_MATRIX_EQ( 646 EXPECT_TRANSFORMATION_MATRIX_EQ(
677 replica_composite_transform, 647 replica_composite_transform,
678 child->render_target()->render_surface()->replica_draw_transform()); 648 child->render_target()->replica_draw_transform());
679 EXPECT_TRANSFORMATION_MATRIX_EQ(replica_composite_transform, 649 EXPECT_TRANSFORMATION_MATRIX_EQ(replica_composite_transform,
680 child->render_target() 650 child->render_target()
681 ->render_surface()
682 ->replica_screen_space_transform()); 651 ->replica_screen_space_transform());
683 } 652 }
684 653
685 TEST_F(LayerTreeHostCommonTest, TransformsForRenderSurfaceHierarchy) { 654 TEST_F(LayerTreeHostCommonTest, TransformsForRenderSurfaceHierarchy) {
686 // This test creates a more complex tree and verifies it all at once. This 655 // This test creates a more complex tree and verifies it all at once. This
687 // covers the following cases: 656 // covers the following cases:
688 // - layers that are described w.r.t. a render surface: should have draw 657 // - layers that are described w.r.t. a render surface: should have draw
689 // transforms described w.r.t. that surface 658 // transforms described w.r.t. that surface
690 // - A render surface described w.r.t. an ancestor render surface: should 659 // - A render surface described w.r.t. an ancestor render surface: should
691 // have a draw transform described w.r.t. that ancestor surface 660 // have a draw transform described w.r.t. that ancestor surface
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
820 789
821 ASSERT_TRUE(render_surface1->render_surface()); 790 ASSERT_TRUE(render_surface1->render_surface());
822 ASSERT_FALSE(child_of_rs1->render_surface()); 791 ASSERT_FALSE(child_of_rs1->render_surface());
823 ASSERT_FALSE(grand_child_of_rs1->render_surface()); 792 ASSERT_FALSE(grand_child_of_rs1->render_surface());
824 793
825 ASSERT_TRUE(render_surface2->render_surface()); 794 ASSERT_TRUE(render_surface2->render_surface());
826 ASSERT_FALSE(child_of_rs2->render_surface()); 795 ASSERT_FALSE(child_of_rs2->render_surface());
827 ASSERT_FALSE(grand_child_of_rs2->render_surface()); 796 ASSERT_FALSE(grand_child_of_rs2->render_surface());
828 797
829 // Verify all render target accessors 798 // Verify all render target accessors
830 EXPECT_EQ(root, parent->render_target()); 799 EXPECT_EQ(root->render_surface(), parent->render_target());
831 EXPECT_EQ(root, child_of_root->render_target()); 800 EXPECT_EQ(root->render_surface(), child_of_root->render_target());
832 EXPECT_EQ(root, grand_child_of_root->render_target()); 801 EXPECT_EQ(root->render_surface(), grand_child_of_root->render_target());
833 802
834 EXPECT_EQ(render_surface1, render_surface1->render_target()); 803 EXPECT_EQ(render_surface1->render_surface(),
835 EXPECT_EQ(render_surface1, child_of_rs1->render_target()); 804 render_surface1->render_target());
836 EXPECT_EQ(render_surface1, grand_child_of_rs1->render_target()); 805 EXPECT_EQ(render_surface1->render_surface(), child_of_rs1->render_target());
806 EXPECT_EQ(render_surface1->render_surface(),
807 grand_child_of_rs1->render_target());
837 808
838 EXPECT_EQ(render_surface2, render_surface2->render_target()); 809 EXPECT_EQ(render_surface2->render_surface(),
839 EXPECT_EQ(render_surface2, child_of_rs2->render_target()); 810 render_surface2->render_target());
840 EXPECT_EQ(render_surface2, grand_child_of_rs2->render_target()); 811 EXPECT_EQ(render_surface2->render_surface(), child_of_rs2->render_target());
812 EXPECT_EQ(render_surface2->render_surface(),
813 grand_child_of_rs2->render_target());
841 814
842 // Verify layer draw transforms note that draw transforms are described with 815 // Verify layer draw transforms note that draw transforms are described with
843 // respect to the nearest ancestor render surface but screen space transforms 816 // respect to the nearest ancestor render surface but screen space transforms
844 // are described with respect to the root. 817 // are described with respect to the root.
845 EXPECT_TRANSFORMATION_MATRIX_EQ(A, parent->DrawTransform()); 818 EXPECT_TRANSFORMATION_MATRIX_EQ(A, parent->DrawTransform());
846 EXPECT_TRANSFORMATION_MATRIX_EQ(A * A, child_of_root->DrawTransform()); 819 EXPECT_TRANSFORMATION_MATRIX_EQ(A * A, child_of_root->DrawTransform());
847 EXPECT_TRANSFORMATION_MATRIX_EQ(A * A * A, 820 EXPECT_TRANSFORMATION_MATRIX_EQ(A * A * A,
848 grand_child_of_root->DrawTransform()); 821 grand_child_of_root->DrawTransform());
849 822
850 EXPECT_TRANSFORMATION_MATRIX_EQ(SS1, render_surface1->DrawTransform()); 823 EXPECT_TRANSFORMATION_MATRIX_EQ(SS1, render_surface1->DrawTransform());
(...skipping 1626 matching lines...) Expand 10 before | Expand all | Expand 10 after
2477 grand_child->SetHasRenderSurface(true); 2450 grand_child->SetHasRenderSurface(true);
2478 2451
2479 gfx::Transform expected_leaf_draw_transform_with_surfaces; 2452 gfx::Transform expected_leaf_draw_transform_with_surfaces;
2480 expected_leaf_draw_transform_with_surfaces.Translate(16.0, 16.0); 2453 expected_leaf_draw_transform_with_surfaces.Translate(16.0, 16.0);
2481 2454
2482 gfx::Transform expected_leaf_draw_transform_without_surfaces; 2455 gfx::Transform expected_leaf_draw_transform_without_surfaces;
2483 expected_leaf_draw_transform_without_surfaces.Translate(30.0, 30.0); 2456 expected_leaf_draw_transform_without_surfaces.Translate(30.0, 30.0);
2484 2457
2485 ExecuteCalculateDrawProperties(root); 2458 ExecuteCalculateDrawProperties(root);
2486 EXPECT_FALSE(leaf_node->is_clipped()); 2459 EXPECT_FALSE(leaf_node->is_clipped());
2487 EXPECT_TRUE(leaf_node->render_target()->render_surface()->is_clipped()); 2460 EXPECT_TRUE(leaf_node->render_target()->is_clipped());
2488 EXPECT_EQ(gfx::Rect(16, 16, 2000, 2000), leaf_node->drawable_content_rect()); 2461 EXPECT_EQ(gfx::Rect(16, 16, 2000, 2000), leaf_node->drawable_content_rect());
2489 EXPECT_EQ(expected_leaf_draw_transform_with_surfaces, 2462 EXPECT_EQ(expected_leaf_draw_transform_with_surfaces,
2490 leaf_node->DrawTransform()); 2463 leaf_node->DrawTransform());
2491 2464
2492 root->SetHasRenderSurface(true); 2465 root->SetHasRenderSurface(true);
2493 child->SetHasRenderSurface(true); 2466 child->SetHasRenderSurface(true);
2494 grand_child->SetHasRenderSurface(true); 2467 grand_child->SetHasRenderSurface(true);
2495 2468
2496 ExecuteCalculateDrawPropertiesWithoutSeparateSurfaces(root); 2469 ExecuteCalculateDrawPropertiesWithoutSeparateSurfaces(root);
2497 EXPECT_TRUE(leaf_node->is_clipped()); 2470 EXPECT_TRUE(leaf_node->is_clipped());
2498 EXPECT_EQ(gfx::Rect(6, 6, 396, 396), leaf_node->clip_rect()); 2471 EXPECT_EQ(gfx::Rect(6, 6, 396, 396), leaf_node->clip_rect());
2499 EXPECT_EQ(gfx::Rect(30, 30, 372, 372), leaf_node->drawable_content_rect()); 2472 EXPECT_EQ(gfx::Rect(30, 30, 372, 372), leaf_node->drawable_content_rect());
2500 EXPECT_EQ(expected_leaf_draw_transform_without_surfaces, 2473 EXPECT_EQ(expected_leaf_draw_transform_without_surfaces,
2501 leaf_node->DrawTransform()); 2474 leaf_node->DrawTransform());
2502 2475
2503 root->SetHasRenderSurface(true); 2476 root->SetHasRenderSurface(true);
2504 child->SetHasRenderSurface(true); 2477 child->SetHasRenderSurface(true);
2505 grand_child->SetHasRenderSurface(true); 2478 grand_child->SetHasRenderSurface(true);
2506 2479
2507 ExecuteCalculateDrawProperties(root); 2480 ExecuteCalculateDrawProperties(root);
2508 EXPECT_FALSE(leaf_node->is_clipped()); 2481 EXPECT_FALSE(leaf_node->is_clipped());
2509 EXPECT_TRUE(leaf_node->render_target()->render_surface()->is_clipped()); 2482 EXPECT_TRUE(leaf_node->render_target()->is_clipped());
2510 EXPECT_EQ(gfx::Rect(16, 16, 2000, 2000), leaf_node->drawable_content_rect()); 2483 EXPECT_EQ(gfx::Rect(16, 16, 2000, 2000), leaf_node->drawable_content_rect());
2511 EXPECT_EQ(expected_leaf_draw_transform_with_surfaces, 2484 EXPECT_EQ(expected_leaf_draw_transform_with_surfaces,
2512 leaf_node->DrawTransform()); 2485 leaf_node->DrawTransform());
2513 } 2486 }
2514 2487
2515 TEST_F(LayerTreeHostCommonTest, AnimationsForRenderSurfaceHierarchy) { 2488 TEST_F(LayerTreeHostCommonTest, AnimationsForRenderSurfaceHierarchy) {
2516 LayerImpl* parent = root_layer(); 2489 LayerImpl* parent = root_layer();
2517 LayerImpl* render_surface1 = AddChildToRoot<LayerImpl>(); 2490 LayerImpl* render_surface1 = AddChildToRoot<LayerImpl>();
2518 LayerImpl* child_of_rs1 = AddChild<LayerImpl>(render_surface1); 2491 LayerImpl* child_of_rs1 = AddChild<LayerImpl>(render_surface1);
2519 LayerImpl* grand_child_of_rs1 = AddChild<LayerImpl>(child_of_rs1); 2492 LayerImpl* grand_child_of_rs1 = AddChild<LayerImpl>(child_of_rs1);
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
2593 2566
2594 ASSERT_TRUE(render_surface1->render_surface()); 2567 ASSERT_TRUE(render_surface1->render_surface());
2595 ASSERT_FALSE(child_of_rs1->render_surface()); 2568 ASSERT_FALSE(child_of_rs1->render_surface());
2596 ASSERT_FALSE(grand_child_of_rs1->render_surface()); 2569 ASSERT_FALSE(grand_child_of_rs1->render_surface());
2597 2570
2598 ASSERT_TRUE(render_surface2->render_surface()); 2571 ASSERT_TRUE(render_surface2->render_surface());
2599 ASSERT_FALSE(child_of_rs2->render_surface()); 2572 ASSERT_FALSE(child_of_rs2->render_surface());
2600 ASSERT_FALSE(grand_child_of_rs2->render_surface()); 2573 ASSERT_FALSE(grand_child_of_rs2->render_surface());
2601 2574
2602 // Verify all render target accessors 2575 // Verify all render target accessors
2603 EXPECT_EQ(parent, parent->render_target()); 2576 EXPECT_EQ(parent->render_surface(), parent->render_target());
2604 EXPECT_EQ(parent, child_of_root->render_target()); 2577 EXPECT_EQ(parent->render_surface(), child_of_root->render_target());
2605 EXPECT_EQ(parent, grand_child_of_root->render_target()); 2578 EXPECT_EQ(parent->render_surface(), grand_child_of_root->render_target());
2606 2579
2607 EXPECT_EQ(render_surface1, render_surface1->render_target()); 2580 EXPECT_EQ(render_surface1->render_surface(),
2608 EXPECT_EQ(render_surface1, child_of_rs1->render_target()); 2581 render_surface1->render_target());
2609 EXPECT_EQ(render_surface1, grand_child_of_rs1->render_target()); 2582 EXPECT_EQ(render_surface1->render_surface(), child_of_rs1->render_target());
2583 EXPECT_EQ(render_surface1->render_surface(),
2584 grand_child_of_rs1->render_target());
2610 2585
2611 EXPECT_EQ(render_surface2, render_surface2->render_target()); 2586 EXPECT_EQ(render_surface2->render_surface(),
2612 EXPECT_EQ(render_surface2, child_of_rs2->render_target()); 2587 render_surface2->render_target());
2613 EXPECT_EQ(render_surface2, grand_child_of_rs2->render_target()); 2588 EXPECT_EQ(render_surface2->render_surface(), child_of_rs2->render_target());
2589 EXPECT_EQ(render_surface2->render_surface(),
2590 grand_child_of_rs2->render_target());
2614 2591
2615 // Verify screen_space_transform_is_animating values 2592 // Verify screen_space_transform_is_animating values
2616 EXPECT_FALSE(parent->screen_space_transform_is_animating()); 2593 EXPECT_FALSE(parent->screen_space_transform_is_animating());
2617 EXPECT_FALSE(child_of_root->screen_space_transform_is_animating()); 2594 EXPECT_FALSE(child_of_root->screen_space_transform_is_animating());
2618 EXPECT_TRUE(grand_child_of_root->screen_space_transform_is_animating()); 2595 EXPECT_TRUE(grand_child_of_root->screen_space_transform_is_animating());
2619 EXPECT_FALSE(render_surface1->screen_space_transform_is_animating()); 2596 EXPECT_FALSE(render_surface1->screen_space_transform_is_animating());
2620 EXPECT_FALSE(child_of_rs1->screen_space_transform_is_animating()); 2597 EXPECT_FALSE(child_of_rs1->screen_space_transform_is_animating());
2621 EXPECT_FALSE(grand_child_of_rs1->screen_space_transform_is_animating()); 2598 EXPECT_FALSE(grand_child_of_rs1->screen_space_transform_is_animating());
2622 EXPECT_TRUE(render_surface2->screen_space_transform_is_animating()); 2599 EXPECT_TRUE(render_surface2->screen_space_transform_is_animating());
2623 EXPECT_TRUE(child_of_rs2->screen_space_transform_is_animating()); 2600 EXPECT_TRUE(child_of_rs2->screen_space_transform_is_animating());
(...skipping 6577 matching lines...) Expand 10 before | Expand all | Expand 10 after
9201 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(), 9178 SetLayerPropertiesForTesting(render_surface, identity_matrix, gfx::Point3F(),
9202 gfx::PointF(), gfx::Size(30, 30), true, false, 9179 gfx::PointF(), gfx::Size(30, 30), true, false,
9203 true); 9180 true);
9204 SetLayerPropertiesForTesting(test_layer, identity_matrix, gfx::Point3F(), 9181 SetLayerPropertiesForTesting(test_layer, identity_matrix, gfx::Point3F(),
9205 gfx::PointF(), gfx::Size(30, 30), true, false, 9182 gfx::PointF(), gfx::Size(30, 30), true, false,
9206 false); 9183 false);
9207 9184
9208 ExecuteCalculateDrawProperties(root); 9185 ExecuteCalculateDrawProperties(root);
9209 9186
9210 EXPECT_TRUE(test_layer->is_clipped()); 9187 EXPECT_TRUE(test_layer->is_clipped());
9211 EXPECT_FALSE(test_layer->render_target()->render_surface()->is_clipped()); 9188 EXPECT_FALSE(test_layer->render_target()->is_clipped());
9212 EXPECT_EQ(gfx::Rect(-2, -2, 30, 30), test_layer->clip_rect()); 9189 EXPECT_EQ(gfx::Rect(-2, -2, 30, 30), test_layer->clip_rect());
9213 EXPECT_EQ(gfx::Rect(28, 28), test_layer->drawable_content_rect()); 9190 EXPECT_EQ(gfx::Rect(28, 28), test_layer->drawable_content_rect());
9214 } 9191 }
9215 9192
9216 TEST_F(LayerTreeHostCommonTest, 9193 TEST_F(LayerTreeHostCommonTest,
9217 RenderSurfaceWithUnclippedDescendantsButDoesntApplyOwnClip) { 9194 RenderSurfaceWithUnclippedDescendantsButDoesntApplyOwnClip) {
9218 // Ensure that the visible layer rect of a descendant of a surface with 9195 // Ensure that the visible layer rect of a descendant of a surface with
9219 // unclipped descendants is computed correctly, when the surface doesn't apply 9196 // unclipped descendants is computed correctly, when the surface doesn't apply
9220 // a clip. 9197 // a clip.
9221 LayerImpl* root = root_layer(); 9198 LayerImpl* root = root_layer();
(...skipping 719 matching lines...) Expand 10 before | Expand all | Expand 10 after
9941 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index()); 9918 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index());
9942 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index()); 9919 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index());
9943 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index()); 9920 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index());
9944 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index()); 9921 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index());
9945 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index()); 9922 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index());
9946 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index()); 9923 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index());
9947 } 9924 }
9948 9925
9949 } // namespace 9926 } // namespace
9950 } // namespace cc 9927 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_common.cc ('k') | cc/trees/layer_tree_host_unittest_occlusion.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698