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

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

Issue 2643203002: Rewrite blink->cc scroll offset logic for SPV2 (Closed)
Patch Set: Move code back under updateScrollOffset Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 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 671 matching lines...) Expand 10 before | Expand all | Expand 10 after
682 EXPECT_EQ(1, scrollNode.parent_id); 682 EXPECT_EQ(1, scrollNode.parent_id);
683 EXPECT_EQ(expectedCompositorElementId, scrollNode.element_id); 683 EXPECT_EQ(expectedCompositorElementId, scrollNode.element_id);
684 EXPECT_EQ(scrollNode.id, 684 EXPECT_EQ(scrollNode.id,
685 elementIdToScrollNodeIndex(expectedCompositorElementId)); 685 elementIdToScrollNodeIndex(expectedCompositorElementId));
686 EXPECT_EQ(expectedCompositorElementId, contentLayerAt(0)->element_id()); 686 EXPECT_EQ(expectedCompositorElementId, contentLayerAt(0)->element_id());
687 687
688 const cc::TransformTree& transformTree = propertyTrees().transform_tree; 688 const cc::TransformTree& transformTree = propertyTrees().transform_tree;
689 const cc::TransformNode& transformNode = 689 const cc::TransformNode& transformNode =
690 *transformTree.Node(scrollNode.transform_id); 690 *transformTree.Node(scrollNode.transform_id);
691 EXPECT_TRUE(transformNode.local.IsIdentity()); 691 EXPECT_TRUE(transformNode.local.IsIdentity());
692 692 EXPECT_EQ(gfx::ScrollOffset(-7, -9), transformNode.scroll_offset);
693 EXPECT_EQ(gfx::ScrollOffset(-7, -9),
694 scrollTree.current_scroll_offset(contentLayerAt(0)->id()));
695 693
696 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain, 694 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain,
697 scrollNode.main_thread_scrolling_reasons); 695 scrollNode.main_thread_scrolling_reasons);
698 } 696 }
699 697
700 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, NestedScrollNodes) { 698 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, NestedScrollNodes) {
701 RefPtr<EffectPaintPropertyNode> effect = 699 RefPtr<EffectPaintPropertyNode> effect =
702 createOpacityOnlyEffect(EffectPaintPropertyNode::root(), 0.5); 700 createOpacityOnlyEffect(EffectPaintPropertyNode::root(), 0.5);
703 701
704 CompositorElementId expectedCompositorElementIdA = CompositorElementId(2, 0); 702 CompositorElementId expectedCompositorElementIdA = CompositorElementId(2, 0);
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
749 EXPECT_EQ(expectedCompositorElementIdB, scrollNodeB.element_id); 747 EXPECT_EQ(expectedCompositorElementIdB, scrollNodeB.element_id);
750 EXPECT_EQ(scrollNodeB.id, 748 EXPECT_EQ(scrollNodeB.id,
751 elementIdToScrollNodeIndex(expectedCompositorElementIdB)); 749 elementIdToScrollNodeIndex(expectedCompositorElementIdB));
752 EXPECT_EQ(expectedCompositorElementIdA, contentLayerAt(0)->element_id()); 750 EXPECT_EQ(expectedCompositorElementIdA, contentLayerAt(0)->element_id());
753 EXPECT_EQ(expectedCompositorElementIdB, contentLayerAt(1)->element_id()); 751 EXPECT_EQ(expectedCompositorElementIdB, contentLayerAt(1)->element_id());
754 752
755 const cc::TransformTree& transformTree = propertyTrees().transform_tree; 753 const cc::TransformTree& transformTree = propertyTrees().transform_tree;
756 const cc::TransformNode& transformNodeA = 754 const cc::TransformNode& transformNodeA =
757 *transformTree.Node(scrollNodeA.transform_id); 755 *transformTree.Node(scrollNodeA.transform_id);
758 EXPECT_TRUE(transformNodeA.local.IsIdentity()); 756 EXPECT_TRUE(transformNodeA.local.IsIdentity());
757 EXPECT_EQ(gfx::ScrollOffset(-11, -13), transformNodeA.scroll_offset);
758
759 const cc::TransformNode& transformNodeB = 759 const cc::TransformNode& transformNodeB =
760 *transformTree.Node(scrollNodeB.transform_id); 760 *transformTree.Node(scrollNodeB.transform_id);
761 EXPECT_TRUE(transformNodeB.local.IsIdentity()); 761 EXPECT_EQ(gfx::ScrollOffset(-37, -41), transformNodeB.scroll_offset);
762
763 EXPECT_EQ(gfx::ScrollOffset(-11, -13),
764 scrollTree.current_scroll_offset(contentLayerAt(0)->id()));
765 EXPECT_EQ(gfx::ScrollOffset(-37, -41),
766 scrollTree.current_scroll_offset(contentLayerAt(1)->id()));
767 762
768 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons & 763 EXPECT_TRUE(scrollNodeA.main_thread_scrolling_reasons &
769 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); 764 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
770 EXPECT_FALSE(scrollNodeB.main_thread_scrolling_reasons & 765 EXPECT_FALSE(scrollNodeB.main_thread_scrolling_reasons &
771 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects); 766 MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects);
772 } 767 }
773 768
774 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) { 769 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, MergeSimpleChunks) {
775 TestPaintArtifact testArtifact; 770 TestPaintArtifact testArtifact;
776 testArtifact 771 testArtifact
(...skipping 839 matching lines...) Expand 10 before | Expand all | Expand 10 after
1616 chunk3.properties.propertyTreeState = chunk1.properties.propertyTreeState; 1611 chunk3.properties.propertyTreeState = chunk1.properties.propertyTreeState;
1617 chunk3.bounds = FloatRect(0, 0, 50, 60); 1612 chunk3.bounds = FloatRect(0, 0, 50, 60);
1618 chunk3.knownToBeOpaque = true; 1613 chunk3.knownToBeOpaque = true;
1619 pendingLayer.add(chunk3, nullptr); 1614 pendingLayer.add(chunk3, nullptr);
1620 1615
1621 // Chunk 3 covers the entire layer, so now it's opaque. 1616 // Chunk 3 covers the entire layer, so now it's opaque.
1622 EXPECT_TRUE(pendingLayer.knownToBeOpaque); 1617 EXPECT_TRUE(pendingLayer.knownToBeOpaque);
1623 } 1618 }
1624 1619
1625 } // namespace blink 1620 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698