| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "platform/graphics/compositing/PaintArtifactCompositor.h" | 5 #include "platform/graphics/compositing/PaintArtifactCompositor.h" |
| 6 | 6 |
| 7 #include "base/test/test_simple_task_runner.h" | 7 #include "base/test/test_simple_task_runner.h" |
| 8 #include "base/threading/thread_task_runner_handle.h" | 8 #include "base/threading/thread_task_runner_handle.h" |
| 9 #include "cc/layers/layer.h" | 9 #include "cc/layers/layer.h" |
| 10 #include "cc/test/fake_compositor_frame_sink.h" | 10 #include "cc/test/fake_compositor_frame_sink.h" |
| (...skipping 661 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 672 EXPECT_EQ(gfx::Size(11, 13), scrollNode.scroll_clip_layer_bounds); | 672 EXPECT_EQ(gfx::Size(11, 13), scrollNode.scroll_clip_layer_bounds); |
| 673 EXPECT_EQ(gfx::Size(27, 31), scrollNode.bounds); | 673 EXPECT_EQ(gfx::Size(27, 31), scrollNode.bounds); |
| 674 EXPECT_TRUE(scrollNode.user_scrollable_horizontal); | 674 EXPECT_TRUE(scrollNode.user_scrollable_horizontal); |
| 675 EXPECT_FALSE(scrollNode.user_scrollable_vertical); | 675 EXPECT_FALSE(scrollNode.user_scrollable_vertical); |
| 676 EXPECT_EQ(1, scrollNode.parent_id); | 676 EXPECT_EQ(1, scrollNode.parent_id); |
| 677 | 677 |
| 678 const cc::TransformTree& transformTree = propertyTrees().transform_tree; | 678 const cc::TransformTree& transformTree = propertyTrees().transform_tree; |
| 679 const cc::TransformNode& transformNode = | 679 const cc::TransformNode& transformNode = |
| 680 *transformTree.Node(scrollNode.transform_id); | 680 *transformTree.Node(scrollNode.transform_id); |
| 681 EXPECT_TRUE(transformNode.local.IsIdentity()); | 681 EXPECT_TRUE(transformNode.local.IsIdentity()); |
| 682 | 682 EXPECT_EQ(gfx::ScrollOffset(-7, -9), transformNode.scroll_offset); |
| 683 EXPECT_EQ(gfx::ScrollOffset(-7, -9), | |
| 684 scrollTree.current_scroll_offset(contentLayerAt(0)->id())); | |
| 685 | 683 |
| 686 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain, | 684 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain, |
| 687 scrollNode.main_thread_scrolling_reasons); | 685 scrollNode.main_thread_scrolling_reasons); |
| 688 } | 686 } |
| 689 | 687 |
| 690 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, NestedScrollNodes) { | 688 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, NestedScrollNodes) { |
| 691 RefPtr<EffectPaintPropertyNode> effect = | 689 RefPtr<EffectPaintPropertyNode> effect = |
| 692 createOpacityOnlyEffect(EffectPaintPropertyNode::root(), 0.5); | 690 createOpacityOnlyEffect(EffectPaintPropertyNode::root(), 0.5); |
| 693 | 691 |
| 694 RefPtr<TransformPaintPropertyNode> scrollTranslationA = | 692 RefPtr<TransformPaintPropertyNode> scrollTranslationA = |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 728 EXPECT_EQ(gfx::Size(19, 23), scrollNodeB.scroll_clip_layer_bounds); | 726 EXPECT_EQ(gfx::Size(19, 23), scrollNodeB.scroll_clip_layer_bounds); |
| 729 EXPECT_EQ(gfx::Size(29, 31), scrollNodeB.bounds); | 727 EXPECT_EQ(gfx::Size(29, 31), scrollNodeB.bounds); |
| 730 EXPECT_TRUE(scrollNodeB.user_scrollable_horizontal); | 728 EXPECT_TRUE(scrollNodeB.user_scrollable_horizontal); |
| 731 EXPECT_FALSE(scrollNodeB.user_scrollable_vertical); | 729 EXPECT_FALSE(scrollNodeB.user_scrollable_vertical); |
| 732 EXPECT_EQ(scrollNodeA.id, scrollNodeB.parent_id); | 730 EXPECT_EQ(scrollNodeA.id, scrollNodeB.parent_id); |
| 733 | 731 |
| 734 const cc::TransformTree& transformTree = propertyTrees().transform_tree; | 732 const cc::TransformTree& transformTree = propertyTrees().transform_tree; |
| 735 const cc::TransformNode& transformNodeA = | 733 const cc::TransformNode& transformNodeA = |
| 736 *transformTree.Node(scrollNodeA.transform_id); | 734 *transformTree.Node(scrollNodeA.transform_id); |
| 737 EXPECT_TRUE(transformNodeA.local.IsIdentity()); | 735 EXPECT_TRUE(transformNodeA.local.IsIdentity()); |
| 736 EXPECT_EQ(gfx::ScrollOffset(-11, -13), transformNodeA.scroll_offset); |
| 737 |
| 738 const cc::TransformNode& transformNodeB = | 738 const cc::TransformNode& transformNodeB = |
| 739 *transformTree.Node(scrollNodeB.transform_id); | 739 *transformTree.Node(scrollNodeB.transform_id); |
| 740 EXPECT_TRUE(transformNodeB.local.IsIdentity()); | 740 EXPECT_TRUE(transformNodeB.local.IsIdentity()); |
| 741 | 741 EXPECT_EQ(gfx::ScrollOffset(-37, -41), transformNodeB.scroll_offset); |
| 742 EXPECT_EQ(gfx::ScrollOffset(-11, -13), | |
| 743 scrollTree.current_scroll_offset(contentLayerAt(0)->id())); | |
| 744 EXPECT_EQ(gfx::ScrollOffset(-37, -41), | |
| 745 scrollTree.current_scroll_offset(contentLayerAt(1)->id())); | |
| 746 | 742 |
| 747 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons & | 743 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons & |
| 748 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); | 744 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); |
| 749 EXPECT_FALSE(scrollNodeB.main_thread_scrolling_reasons & | 745 EXPECT_FALSE(scrollNodeB.main_thread_scrolling_reasons & |
| 750 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); | 746 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); |
| 751 } | 747 } |
| 752 | 748 |
| 753 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) { | 749 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) { |
| 754 TestPaintArtifact testArtifact; | 750 TestPaintArtifact testArtifact; |
| 755 testArtifact | 751 testArtifact |
| (...skipping 792 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1548 chunk3.properties.propertyTreeState = chunk1.properties.propertyTreeState; | 1544 chunk3.properties.propertyTreeState = chunk1.properties.propertyTreeState; |
| 1549 chunk3.bounds = FloatRect(0, 0, 50, 60); | 1545 chunk3.bounds = FloatRect(0, 0, 50, 60); |
| 1550 chunk3.knownToBeOpaque = true; | 1546 chunk3.knownToBeOpaque = true; |
| 1551 pendingLayer.add(chunk3, nullptr); | 1547 pendingLayer.add(chunk3, nullptr); |
| 1552 | 1548 |
| 1553 // Chunk 3 covers the entire layer, so now it's opaque. | 1549 // Chunk 3 covers the entire layer, so now it's opaque. |
| 1554 EXPECT_TRUE(pendingLayer.knownToBeOpaque); | 1550 EXPECT_TRUE(pendingLayer.knownToBeOpaque); |
| 1555 } | 1551 } |
| 1556 | 1552 |
| 1557 } // namespace blink | 1553 } // namespace blink |
| OLD | NEW |