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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositorTest.cpp

Issue 2650903002: Ignore scroll node when checking whether a chunk can merge. (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 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 724 matching lines...) Expand 10 before | Expand all | Expand 10 after
735 artifact 735 artifact
736 .chunk(scrollTranslationA, ClipPaintPropertyNode::root(), effect, scrollA) 736 .chunk(scrollTranslationA, ClipPaintPropertyNode::root(), effect, scrollA)
737 .rectDrawing(FloatRect(7, 11, 13, 17), Color::white); 737 .rectDrawing(FloatRect(7, 11, 13, 17), Color::white);
738 artifact 738 artifact
739 .chunk(scrollTranslationB, ClipPaintPropertyNode::root(), effect, scrollB) 739 .chunk(scrollTranslationB, ClipPaintPropertyNode::root(), effect, scrollB)
740 .rectDrawing(FloatRect(1, 2, 3, 5), Color::white); 740 .rectDrawing(FloatRect(1, 2, 3, 5), Color::white);
741 update(artifact.build()); 741 update(artifact.build());
742 742
743 const cc::ScrollTree& scrollTree = propertyTrees().scroll_tree; 743 const cc::ScrollTree& scrollTree = propertyTrees().scroll_tree;
744 // Node #0 reserved for null; #1 for root render surface. 744 // Node #0 reserved for null; #1 for root render surface.
745 ASSERT_EQ(4u, scrollTree.size()); 745 ASSERT_EQ(3u, scrollTree.size());
746 const cc::ScrollNode& scrollNodeA = *scrollTree.Node(2); 746 const cc::ScrollNode& scrollNodeA = *scrollTree.Node(2);
747 EXPECT_EQ(gfx::Size(2, 3), scrollNodeA.scroll_clip_layer_bounds); 747 EXPECT_EQ(gfx::Size(2, 3), scrollNodeA.scroll_clip_layer_bounds);
748 EXPECT_EQ(gfx::Size(5, 7), scrollNodeA.bounds); 748 EXPECT_EQ(gfx::Size(5, 7), scrollNodeA.bounds);
749 EXPECT_FALSE(scrollNodeA.user_scrollable_horizontal); 749 EXPECT_FALSE(scrollNodeA.user_scrollable_horizontal);
750 EXPECT_TRUE(scrollNodeA.user_scrollable_vertical); 750 EXPECT_TRUE(scrollNodeA.user_scrollable_vertical);
751 EXPECT_EQ(1, scrollNodeA.parent_id); 751 EXPECT_EQ(1, scrollNodeA.parent_id);
752 const cc::ScrollNode& scrollNodeB = *scrollTree.Node(3);
753 EXPECT_EQ(gfx::Size(19, 23), scrollNodeB.scroll_clip_layer_bounds);
754 EXPECT_EQ(gfx::Size(29, 31), scrollNodeB.bounds);
755 EXPECT_TRUE(scrollNodeB.user_scrollable_horizontal);
756 EXPECT_FALSE(scrollNodeB.user_scrollable_vertical);
757 EXPECT_EQ(scrollNodeA.id, scrollNodeB.parent_id);
758 EXPECT_EQ(expectedCompositorElementIdA, scrollNodeA.element_id); 752 EXPECT_EQ(expectedCompositorElementIdA, scrollNodeA.element_id);
759 EXPECT_EQ(scrollNodeA.id, 753 EXPECT_EQ(scrollNodeA.id,
760 elementIdToScrollNodeIndex(expectedCompositorElementIdA)); 754 elementIdToScrollNodeIndex(expectedCompositorElementIdA));
761 EXPECT_EQ(expectedCompositorElementIdB, scrollNodeB.element_id);
762 EXPECT_EQ(scrollNodeB.id,
763 elementIdToScrollNodeIndex(expectedCompositorElementIdB));
764 EXPECT_EQ(expectedCompositorElementIdA, contentLayerAt(0)->element_id()); 755 EXPECT_EQ(expectedCompositorElementIdA, contentLayerAt(0)->element_id());
765 EXPECT_EQ(expectedCompositorElementIdB, contentLayerAt(1)->element_id());
766 756
767 const cc::TransformTree& transformTree = propertyTrees().transform_tree; 757 const cc::TransformTree& transformTree = propertyTrees().transform_tree;
768 const cc::TransformNode& transformNodeA = 758 const cc::TransformNode& transformNodeA =
769 *transformTree.Node(scrollNodeA.transform_id); 759 *transformTree.Node(scrollNodeA.transform_id);
770 EXPECT_TRUE(transformNodeA.local.IsIdentity()); 760 EXPECT_TRUE(transformNodeA.local.IsIdentity());
771 EXPECT_EQ(gfx::ScrollOffset(-11, -13), transformNodeA.scroll_offset); 761 EXPECT_EQ(gfx::ScrollOffset(-11, -13), transformNodeA.scroll_offset);
772 762
773 const cc::TransformNode& transformNodeB =
774 *transformTree.Node(scrollNodeB.transform_id);
775 EXPECT_EQ(gfx::ScrollOffset(-37, -41), transformNodeB.scroll_offset);
776
777 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons & 763 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons &
778 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); 764 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
779 EXPECT_FALSE(scrollNodeB.main_thread_scrolling_reasons &
780 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
781 } 765 }
782 766
783 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) { 767 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) {
784 TestPaintArtifact testArtifact; 768 TestPaintArtifact testArtifact;
785 testArtifact 769 testArtifact
786 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(), 770 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(),
787 EffectPaintPropertyNode::root()) 771 EffectPaintPropertyNode::root())
788 .rectDrawing(FloatRect(0, 0, 100, 100), Color::white); 772 .rectDrawing(FloatRect(0, 0, 100, 100), Color::white);
789 testArtifact 773 testArtifact
790 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(), 774 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(),
(...skipping 871 matching lines...) Expand 10 before | Expand all | Expand 10 after
1662 artifact 1646 artifact
1663 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(), 1647 .chunk(TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(),
1664 effect.get()) 1648 effect.get())
1665 .rectDrawing(FloatRect(100, 100, 200, 100), Color::black); 1649 .rectDrawing(FloatRect(100, 100, 200, 100), Color::black);
1666 update(artifact.build()); 1650 update(artifact.build());
1667 1651
1668 EXPECT_EQ(2, elementIdToEffectNodeIndex(expectedCompositorElementId)); 1652 EXPECT_EQ(2, elementIdToEffectNodeIndex(expectedCompositorElementId));
1669 } 1653 }
1670 1654
1671 } // namespace blink 1655 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698