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

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: 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 661 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698