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

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

Issue 2800983002: Set owning layer id on transform nodes in SPv2. (Closed)
Patch Set: Add comments. Created 3 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
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 <memory> 7 #include <memory>
8 8
9 #include "base/test/test_simple_task_runner.h" 9 #include "base/test/test_simple_task_runner.h"
10 #include "base/threading/thread_task_runner_handle.h" 10 #include "base/threading/thread_task_runner_handle.h"
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after
708 708
709 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain, 709 EXPECT_EQ(MainThreadScrollingReason::kNotScrollingOnMain,
710 scrollNode.main_thread_scrolling_reasons); 710 scrollNode.main_thread_scrolling_reasons);
711 711
712 auto* layer = contentLayerAt(0); 712 auto* layer = contentLayerAt(0);
713 EXPECT_EQ(layer->id(), scrollNode.owning_layer_id); 713 EXPECT_EQ(layer->id(), scrollNode.owning_layer_id);
714 auto scrollNodeIndex = 714 auto scrollNodeIndex =
715 propertyTrees().scroll_tree.FindNodeIndexFromOwningLayerId(layer->id()); 715 propertyTrees().scroll_tree.FindNodeIndexFromOwningLayerId(layer->id());
716 EXPECT_EQ(scrollNodeIndex, scrollNode.id); 716 EXPECT_EQ(scrollNodeIndex, scrollNode.id);
717 717
718 // Only one content layer, and the first child layer is the dummy layer for
719 // the transform node.
720 const cc::Layer* transformNodeLayer = rootLayer()->children()[0].get();
721 EXPECT_EQ(transformNodeLayer->id(), transformNode.owning_layer_id);
722 auto transformNodeIndex =
723 propertyTrees().transform_tree.FindNodeIndexFromOwningLayerId(
724 transformNodeLayer->id());
725 EXPECT_EQ(transformNodeIndex, transformNode.id);
726
718 EXPECT_EQ(0u, scrollClient.didScrollCount); 727 EXPECT_EQ(0u, scrollClient.didScrollCount);
719 layer->SetScrollOffsetFromImplSide(gfx::ScrollOffset(1, 2)); 728 layer->SetScrollOffsetFromImplSide(gfx::ScrollOffset(1, 2));
720 EXPECT_EQ(1u, scrollClient.didScrollCount); 729 EXPECT_EQ(1u, scrollClient.didScrollCount);
721 EXPECT_EQ(gfx::ScrollOffset(1, 2), scrollClient.lastScrollOffset); 730 EXPECT_EQ(gfx::ScrollOffset(1, 2), scrollClient.lastScrollOffset);
722 } 731 }
723 732
724 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, TransformUnderScrollNode) { 733 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, TransformUnderScrollNode) {
725 RefPtr<TransformPaintPropertyNode> scrollTranslation = 734 RefPtr<TransformPaintPropertyNode> scrollTranslation =
726 TransformPaintPropertyNode::createScrollTranslation( 735 TransformPaintPropertyNode::createScrollTranslation(
727 TransformPaintPropertyNode::root(), 736 TransformPaintPropertyNode::root(),
(...skipping 854 matching lines...) Expand 10 before | Expand all | Expand 10 after
1582 TestPaintArtifact artifact; 1591 TestPaintArtifact artifact;
1583 artifact 1592 artifact
1584 .chunk(transform, ClipPaintPropertyNode::root(), 1593 .chunk(transform, ClipPaintPropertyNode::root(),
1585 EffectPaintPropertyNode::root()) 1594 EffectPaintPropertyNode::root())
1586 .rectDrawing(FloatRect(100, 100, 200, 100), Color::black); 1595 .rectDrawing(FloatRect(100, 100, 200, 100), Color::black);
1587 update(artifact.build()); 1596 update(artifact.build());
1588 1597
1589 EXPECT_EQ(2, elementIdToTransformNodeIndex(expectedCompositorElementId)); 1598 EXPECT_EQ(2, elementIdToTransformNodeIndex(expectedCompositorElementId));
1590 } 1599 }
1591 1600
1601 TEST_F(PaintArtifactCompositorTestWithPropertyTrees,
1602 TransformNodeHasOwningLayerId) {
1603 RefPtr<TransformPaintPropertyNode> transform =
1604 TransformPaintPropertyNode::create(
1605 TransformPaintPropertyNode::root(), TransformationMatrix().rotate(90),
1606 FloatPoint3D(100, 100, 0), false, 0, CompositingReason3DTransform);
1607
1608 TestPaintArtifact artifact;
1609 artifact
1610 .chunk(transform, ClipPaintPropertyNode::root(),
1611 EffectPaintPropertyNode::root())
1612 .rectDrawing(FloatRect(100, 100, 200, 100), Color::black);
1613 update(artifact.build());
1614
1615 // Only one content layer, and the first child layer is the dummy layer for
1616 // the transform node.
1617 ASSERT_EQ(1u, contentLayerCount());
1618 const cc::Layer* transformNodeLayer = rootLayer()->children()[0].get();
1619 const cc::TransformNode* ccTransformNode =
1620 propertyTrees().transform_tree.Node(
1621 transformNodeLayer->transform_tree_index());
1622 EXPECT_EQ(transformNodeLayer->id(), ccTransformNode->owning_layer_id);
1623 auto transformNodeIndex =
1624 propertyTrees().transform_tree.FindNodeIndexFromOwningLayerId(
1625 transformNodeLayer->id());
1626 EXPECT_EQ(transformNodeIndex, ccTransformNode->id);
1627 }
1628
1592 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, EffectWithElementId) { 1629 TEST_F(PaintArtifactCompositorTestWithPropertyTrees, EffectWithElementId) {
1593 CompositorElementId expectedCompositorElementId(2, 0); 1630 CompositorElementId expectedCompositorElementId(2, 0);
1594 float opacity = 2.0 / 255.0; 1631 float opacity = 2.0 / 255.0;
1595 RefPtr<EffectPaintPropertyNode> effect = EffectPaintPropertyNode::create( 1632 RefPtr<EffectPaintPropertyNode> effect = EffectPaintPropertyNode::create(
1596 EffectPaintPropertyNode::root(), TransformPaintPropertyNode::root(), 1633 EffectPaintPropertyNode::root(), TransformPaintPropertyNode::root(),
1597 ClipPaintPropertyNode::root(), ColorFilterNone, 1634 ClipPaintPropertyNode::root(), ColorFilterNone,
1598 CompositorFilterOperations(), opacity, SkBlendMode::kSrcOver, 1635 CompositorFilterOperations(), opacity, SkBlendMode::kSrcOver,
1599 CompositingReasonActiveAnimation, expectedCompositorElementId); 1636 CompositingReasonActiveAnimation, expectedCompositorElementId);
1600 1637
1601 TestPaintArtifact artifact; 1638 TestPaintArtifact artifact;
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
1957 EXPECT_EQ(gfx::Size(50, 50), layer3->bounds()); 1994 EXPECT_EQ(gfx::Size(50, 50), layer3->bounds());
1958 EXPECT_EQ(effectNode->id, layer3->effect_tree_index()); 1995 EXPECT_EQ(effectNode->id, layer3->effect_tree_index());
1959 1996
1960 const cc::Layer* layer4 = contentLayerAt(3); 1997 const cc::Layer* layer4 = contentLayerAt(3);
1961 EXPECT_EQ(gfx::Vector2dF(100.f, 0.f), layer4->offset_to_transform_parent()); 1998 EXPECT_EQ(gfx::Vector2dF(100.f, 0.f), layer4->offset_to_transform_parent());
1962 EXPECT_EQ(gfx::Size(150, 150), layer4->bounds()); 1999 EXPECT_EQ(gfx::Size(150, 150), layer4->bounds());
1963 EXPECT_EQ(1, layer4->effect_tree_index()); 2000 EXPECT_EQ(1, layer4->effect_tree_index());
1964 } 2001 }
1965 2002
1966 } // namespace blink 2003 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698