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

Side by Side Diff: cc/trees/layer_tree_host_common_unittest.cc

Issue 2889093003: Refactor SetViewportLayerIds to use a struct instead of 6 values (Closed)
Patch Set: Fix small mistake made in a test Created 3 years, 7 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
« no previous file with comments | « cc/trees/layer_tree_host.cc ('k') | cc/trees/layer_tree_host_impl_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 "cc/trees/layer_tree_host_common.h" 5 #include "cc/trees/layer_tree_host_common.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
(...skipping 24 matching lines...) Expand all
35 #include "cc/test/fake_layer_tree_host.h" 35 #include "cc/test/fake_layer_tree_host.h"
36 #include "cc/test/fake_layer_tree_host_impl.h" 36 #include "cc/test/fake_layer_tree_host_impl.h"
37 #include "cc/test/fake_picture_layer.h" 37 #include "cc/test/fake_picture_layer.h"
38 #include "cc/test/fake_picture_layer_impl.h" 38 #include "cc/test/fake_picture_layer_impl.h"
39 #include "cc/test/geometry_test_utils.h" 39 #include "cc/test/geometry_test_utils.h"
40 #include "cc/test/layer_test_common.h" 40 #include "cc/test/layer_test_common.h"
41 #include "cc/test/test_task_graph_runner.h" 41 #include "cc/test/test_task_graph_runner.h"
42 #include "cc/trees/clip_node.h" 42 #include "cc/trees/clip_node.h"
43 #include "cc/trees/draw_property_utils.h" 43 #include "cc/trees/draw_property_utils.h"
44 #include "cc/trees/effect_node.h" 44 #include "cc/trees/effect_node.h"
45 #include "cc/trees/layer_tree_impl.h"
46 #include "cc/trees/property_tree_builder.h" 45 #include "cc/trees/property_tree_builder.h"
47 #include "cc/trees/scroll_node.h" 46 #include "cc/trees/scroll_node.h"
48 #include "cc/trees/single_thread_proxy.h" 47 #include "cc/trees/single_thread_proxy.h"
49 #include "cc/trees/task_runner_provider.h" 48 #include "cc/trees/task_runner_provider.h"
50 #include "cc/trees/transform_node.h" 49 #include "cc/trees/transform_node.h"
51 #include "testing/gtest/include/gtest/gtest.h" 50 #include "testing/gtest/include/gtest/gtest.h"
52 #include "third_party/skia/include/core/SkImageFilter.h" 51 #include "third_party/skia/include/core/SkImageFilter.h"
53 #include "third_party/skia/include/effects/SkOffsetImageFilter.h" 52 #include "third_party/skia/include/effects/SkOffsetImageFilter.h"
54 #include "third_party/skia/include/effects/SkXfermodeImageFilter.h" 53 #include "third_party/skia/include/effects/SkXfermodeImageFilter.h"
55 #include "ui/gfx/geometry/quad_f.h" 54 #include "ui/gfx/geometry/quad_f.h"
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 MathUtil::Round(kTranslateY * page_scale * kDeviceScale + 595 MathUtil::Round(kTranslateY * page_scale * kDeviceScale +
597 sub_layer_screen_position.y() * page_scale * 596 sub_layer_screen_position.y() * page_scale *
598 kDeviceScale)); 597 kDeviceScale));
599 expected_transform.Scale(page_scale * kDeviceScale, 598 expected_transform.Scale(page_scale * kDeviceScale,
600 page_scale * kDeviceScale); 599 page_scale * kDeviceScale);
601 EXPECT_TRANSFORMATION_MATRIX_EQ(expected_transform, 600 EXPECT_TRANSFORMATION_MATRIX_EQ(expected_transform,
602 sublayer->DrawTransform()); 601 sublayer->DrawTransform());
603 602
604 // Test that page scale is updated even when we don't rebuild property trees. 603 // Test that page scale is updated even when we don't rebuild property trees.
605 page_scale = 1.888f; 604 page_scale = 1.888f;
606 root_layer->layer_tree_impl()->SetViewportLayersFromIds( 605
607 Layer::INVALID_ID, scroll_layer->test_properties()->parent->id(), 606 LayerTreeImpl::ViewportLayerIds viewport_ids;
608 Layer::INVALID_ID, Layer::INVALID_ID, Layer::INVALID_ID, 607 viewport_ids.page_scale = scroll_layer->test_properties()->parent->id();
609 Layer::INVALID_ID); 608 root_layer->layer_tree_impl()->SetViewportLayersFromIds(viewport_ids);
610 root_layer->layer_tree_impl()->SetPageScaleOnActiveTree(page_scale); 609 root_layer->layer_tree_impl()->SetPageScaleOnActiveTree(page_scale);
611 EXPECT_FALSE(root_layer->layer_tree_impl()->property_trees()->needs_rebuild); 610 EXPECT_FALSE(root_layer->layer_tree_impl()->property_trees()->needs_rebuild);
612 ExecuteCalculateDrawProperties(root_layer, kDeviceScale, page_scale, 611 ExecuteCalculateDrawProperties(root_layer, kDeviceScale, page_scale,
613 scroll_layer->test_properties()->parent, 612 scroll_layer->test_properties()->parent,
614 nullptr, nullptr); 613 nullptr, nullptr);
615 614
616 expected_transform.MakeIdentity(); 615 expected_transform.MakeIdentity();
617 expected_transform.Translate( 616 expected_transform.Translate(
618 MathUtil::Round(kTranslateX * page_scale * kDeviceScale + 617 MathUtil::Round(kTranslateX * page_scale * kDeviceScale +
619 sub_layer_screen_position.x() * page_scale * 618 sub_layer_screen_position.x() * page_scale *
(...skipping 3483 matching lines...) Expand 10 before | Expand all | Expand 10 after
4103 4102
4104 LayerImpl* scale_surface = AddChild<LayerImpl>(parent); 4103 LayerImpl* scale_surface = AddChild<LayerImpl>(parent);
4105 scale_surface->SetPosition(gfx::PointF(2.f, 2.f)); 4104 scale_surface->SetPosition(gfx::PointF(2.f, 2.f));
4106 scale_surface->SetBounds(gfx::Size(10, 10)); 4105 scale_surface->SetBounds(gfx::Size(10, 10));
4107 scale_surface->test_properties()->transform = scale_small_matrix; 4106 scale_surface->test_properties()->transform = scale_small_matrix;
4108 scale_surface->SetDrawsContent(true); 4107 scale_surface->SetDrawsContent(true);
4109 scale_surface->test_properties()->force_render_surface = true; 4108 scale_surface->test_properties()->force_render_surface = true;
4110 4109
4111 float device_scale_factor = 2.5f; 4110 float device_scale_factor = 2.5f;
4112 float page_scale_factor = 3.f; 4111 float page_scale_factor = 3.f;
4113 root->layer_tree_impl()->SetViewportLayersFromIds( 4112 LayerTreeImpl::ViewportLayerIds viewport_ids;
4114 Layer::INVALID_ID, page_scale->id(), Layer::INVALID_ID, Layer::INVALID_ID, 4113 viewport_ids.page_scale = page_scale->id();
4115 Layer::INVALID_ID, Layer::INVALID_ID); 4114 root->layer_tree_impl()->SetViewportLayersFromIds(viewport_ids);
4116 root->layer_tree_impl()->BuildLayerListAndPropertyTreesForTesting(); 4115 root->layer_tree_impl()->BuildLayerListAndPropertyTreesForTesting();
4117 root->layer_tree_impl()->SetPageScaleOnActiveTree(page_scale_factor); 4116 root->layer_tree_impl()->SetPageScaleOnActiveTree(page_scale_factor);
4118 ExecuteCalculateDrawProperties(root, device_scale_factor, page_scale_factor, 4117 ExecuteCalculateDrawProperties(root, device_scale_factor, page_scale_factor,
4119 root, nullptr, nullptr); 4118 root, nullptr, nullptr);
4120 4119
4121 EXPECT_FLOAT_EQ(device_scale_factor * page_scale_factor, 4120 EXPECT_FLOAT_EQ(device_scale_factor * page_scale_factor,
4122 parent->GetIdealContentsScale()); 4121 parent->GetIdealContentsScale());
4123 EXPECT_FLOAT_EQ(device_scale_factor * page_scale_factor, 4122 EXPECT_FLOAT_EQ(device_scale_factor * page_scale_factor,
4124 perspective_surface->GetIdealContentsScale()); 4123 perspective_surface->GetIdealContentsScale());
4125 // Ideal scale is the max 2d scale component of the combined transform up to 4124 // Ideal scale is the max 2d scale component of the combined transform up to
(...skipping 3992 matching lines...) Expand 10 before | Expand all | Expand 10 after
8118 host_impl.SetViewportSize(device_viewport_size); 8117 host_impl.SetViewportSize(device_viewport_size);
8119 host_impl.active_tree()->SetRootLayerForTesting( 8118 host_impl.active_tree()->SetRootLayerForTesting(
8120 LayerImpl::Create(host_impl.active_tree(), 1)); 8119 LayerImpl::Create(host_impl.active_tree(), 1));
8121 8120
8122 LayerImpl* root = host_impl.active_tree()->root_layer_for_testing(); 8121 LayerImpl* root = host_impl.active_tree()->root_layer_for_testing();
8123 root->SetBounds(root_size); 8122 root->SetBounds(root_size);
8124 root->SetMasksToBounds(true); 8123 root->SetMasksToBounds(true);
8125 8124
8126 // Make root the inner viewport scroll layer. This ensures the later call to 8125 // Make root the inner viewport scroll layer. This ensures the later call to
8127 // |SetViewportBoundsDelta| will be on a viewport layer. 8126 // |SetViewportBoundsDelta| will be on a viewport layer.
8128 host_impl.active_tree()->SetViewportLayersFromIds( 8127 LayerTreeImpl::ViewportLayerIds viewport_ids;
8129 Layer::INVALID_ID, Layer::INVALID_ID, Layer::INVALID_ID, 8128 viewport_ids.inner_viewport_scroll = root->id();
8130 Layer::INVALID_ID, root->id(), Layer::INVALID_ID); 8129 host_impl.active_tree()->SetViewportLayersFromIds(viewport_ids);
8131 8130
8132 root->test_properties()->AddChild( 8131 root->test_properties()->AddChild(
8133 LayerImpl::Create(host_impl.active_tree(), 2)); 8132 LayerImpl::Create(host_impl.active_tree(), 2));
8134 8133
8135 LayerImpl* sublayer = root->test_properties()->children[0]; 8134 LayerImpl* sublayer = root->test_properties()->children[0];
8136 sublayer->SetBounds(sublayer_size); 8135 sublayer->SetBounds(sublayer_size);
8137 sublayer->SetDrawsContent(true); 8136 sublayer->SetDrawsContent(true);
8138 8137
8139 host_impl.active_tree()->BuildPropertyTreesForTesting(); 8138 host_impl.active_tree()->BuildPropertyTreesForTesting();
8140 8139
(...skipping 2014 matching lines...) Expand 10 before | Expand all | Expand 10 after
10155 10154
10156 // Check child layer draw properties. 10155 // Check child layer draw properties.
10157 EXPECT_EQ(gfx::Rect(10, 10), child->visible_layer_rect()); 10156 EXPECT_EQ(gfx::Rect(10, 10), child->visible_layer_rect());
10158 EXPECT_EQ(gfx::Transform(), child->DrawTransform()); 10157 EXPECT_EQ(gfx::Transform(), child->DrawTransform());
10159 EXPECT_EQ(gfx::Rect(10, 10), child->clip_rect()); 10158 EXPECT_EQ(gfx::Rect(10, 10), child->clip_rect());
10160 EXPECT_EQ(gfx::Rect(10, 10), child->drawable_content_rect()); 10159 EXPECT_EQ(gfx::Rect(10, 10), child->drawable_content_rect());
10161 } 10160 }
10162 10161
10163 } // namespace 10162 } // namespace
10164 } // namespace cc 10163 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host.cc ('k') | cc/trees/layer_tree_host_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698