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

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

Issue 2452303003: Revert of cc : Move screen space scale factor to root transform node (Closed)
Patch Set: resolve merge conflicts Created 4 years, 1 month 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_common.cc ('k') | cc/trees/property_tree.h » ('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 1273 matching lines...) Expand 10 before | Expand all | Expand 10 after
1284 float device_scale_factor = 1.5f; 1284 float device_scale_factor = 1.5f;
1285 1285
1286 { 1286 {
1287 LayerImplList render_surface_layer_list_impl; 1287 LayerImplList render_surface_layer_list_impl;
1288 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( 1288 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs(
1289 root, root->bounds(), translate, &render_surface_layer_list_impl); 1289 root, root->bounds(), translate, &render_surface_layer_list_impl);
1290 inputs.device_scale_factor = device_scale_factor; 1290 inputs.device_scale_factor = device_scale_factor;
1291 inputs.property_trees->needs_rebuild = true; 1291 inputs.property_trees->needs_rebuild = true;
1292 LayerTreeHostCommon::CalculateDrawPropertiesForTesting(&inputs); 1292 LayerTreeHostCommon::CalculateDrawPropertiesForTesting(&inputs);
1293 gfx::Transform device_scaled_translate = translate; 1293 gfx::Transform device_scaled_translate = translate;
1294 device_scaled_translate.matrix().postScale(device_scale_factor, 1294 device_scaled_translate.Scale(device_scale_factor, device_scale_factor);
1295 device_scale_factor, 1.f);
1296 EXPECT_TRANSFORMATION_MATRIX_EQ( 1295 EXPECT_TRANSFORMATION_MATRIX_EQ(
1297 device_scaled_translate, 1296 device_scaled_translate,
1298 root->draw_properties().target_space_transform); 1297 root->draw_properties().target_space_transform);
1299 EXPECT_TRANSFORMATION_MATRIX_EQ( 1298 EXPECT_TRANSFORMATION_MATRIX_EQ(
1300 device_scaled_translate, 1299 device_scaled_translate,
1301 child->draw_properties().target_space_transform); 1300 child->draw_properties().target_space_transform);
1302 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), 1301 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(),
1303 root->render_surface()->draw_transform()); 1302 root->render_surface()->draw_transform());
1304 } 1303 }
1305 1304
1306 // Verify it composes correctly with page scale. 1305 // Verify it composes correctly with page scale.
1307 float page_scale_factor = 2.f; 1306 float page_scale_factor = 2.f;
1308 1307
1309 { 1308 {
1310 LayerImplList render_surface_layer_list_impl; 1309 LayerImplList render_surface_layer_list_impl;
1311 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( 1310 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs(
1312 root, root->bounds(), translate, &render_surface_layer_list_impl); 1311 root, root->bounds(), translate, &render_surface_layer_list_impl);
1313 inputs.page_scale_factor = page_scale_factor; 1312 inputs.page_scale_factor = page_scale_factor;
1314 inputs.page_scale_layer = root; 1313 inputs.page_scale_layer = root;
1315 inputs.property_trees->needs_rebuild = true; 1314 inputs.property_trees->needs_rebuild = true;
1316 LayerTreeHostCommon::CalculateDrawPropertiesForTesting(&inputs); 1315 LayerTreeHostCommon::CalculateDrawPropertiesForTesting(&inputs);
1317 gfx::Transform page_scaled_translate = translate; 1316 gfx::Transform page_scaled_translate = translate;
1318 page_scaled_translate.matrix().postScale(page_scale_factor, 1317 page_scaled_translate.Scale(page_scale_factor, page_scale_factor);
1319 page_scale_factor, 1.f);
1320 EXPECT_TRANSFORMATION_MATRIX_EQ( 1318 EXPECT_TRANSFORMATION_MATRIX_EQ(
1321 page_scaled_translate, root->draw_properties().target_space_transform); 1319 page_scaled_translate, root->draw_properties().target_space_transform);
1322 EXPECT_TRANSFORMATION_MATRIX_EQ( 1320 EXPECT_TRANSFORMATION_MATRIX_EQ(
1323 page_scaled_translate, child->draw_properties().target_space_transform); 1321 page_scaled_translate, child->draw_properties().target_space_transform);
1324 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(), 1322 EXPECT_TRANSFORMATION_MATRIX_EQ(gfx::Transform(),
1325 root->render_surface()->draw_transform()); 1323 root->render_surface()->draw_transform());
1326 } 1324 }
1327 1325
1328 // Verify that it composes correctly with transforms directly on root layer. 1326 // Verify that it composes correctly with transforms directly on root layer.
1329 root->test_properties()->transform = composite; 1327 root->test_properties()->transform = composite;
(...skipping 8403 matching lines...) Expand 10 before | Expand all | Expand 10 after
9733 test_layer->SetBounds(gfx::Size(20, 20)); 9731 test_layer->SetBounds(gfx::Size(20, 20));
9734 test_layer->SetDrawsContent(true); 9732 test_layer->SetDrawsContent(true);
9735 test_layer->SetTouchEventHandlerRegion(gfx::Rect(0, 0, 20, 20)); 9733 test_layer->SetTouchEventHandlerRegion(gfx::Rect(0, 0, 20, 20));
9736 test_layer->test_properties()->opacity = 0.f; 9734 test_layer->test_properties()->opacity = 0.f;
9737 9735
9738 ExecuteCalculateDrawProperties(root); 9736 ExecuteCalculateDrawProperties(root);
9739 EXPECT_TRANSFORMATION_MATRIX_EQ(translation, 9737 EXPECT_TRANSFORMATION_MATRIX_EQ(translation,
9740 test_layer->ScreenSpaceTransform()); 9738 test_layer->ScreenSpaceTransform());
9741 } 9739 }
9742 9740
9743 TEST_F(LayerTreeHostCommonTest, ClipParentDrawsIntoScaledRootSurface) {
9744 LayerImpl* root = root_layer_for_testing();
9745 LayerImpl* clip_layer = AddChild<LayerImpl>(root);
9746 LayerImpl* clip_parent = AddChild<LayerImpl>(clip_layer);
9747 LayerImpl* unclipped_desc_surface = AddChild<LayerImpl>(clip_parent);
9748 LayerImpl* clip_child = AddChild<LayerImpl>(unclipped_desc_surface);
9749
9750 root->SetBounds(gfx::Size(100, 100));
9751 clip_layer->SetBounds(gfx::Size(20, 20));
9752 clip_layer->SetMasksToBounds(true);
9753 clip_parent->SetBounds(gfx::Size(50, 50));
9754 unclipped_desc_surface->SetBounds(gfx::Size(100, 100));
9755 unclipped_desc_surface->SetDrawsContent(true);
9756 unclipped_desc_surface->test_properties()->force_render_surface = true;
9757 clip_child->SetBounds(gfx::Size(100, 100));
9758 clip_child->SetDrawsContent(true);
9759
9760 clip_child->test_properties()->clip_parent = clip_parent;
9761 clip_parent->test_properties()->clip_children =
9762 base::MakeUnique<std::set<LayerImpl*>>();
9763 clip_parent->test_properties()->clip_children->insert(clip_child);
9764
9765 float device_scale_factor = 1.f;
9766 ExecuteCalculateDrawProperties(root, device_scale_factor);
9767 EXPECT_EQ(gfx::Rect(20, 20), clip_child->clip_rect());
9768 EXPECT_EQ(gfx::Rect(20, 20), clip_child->visible_layer_rect());
9769
9770 device_scale_factor = 2.f;
9771 ExecuteCalculateDrawProperties(root, device_scale_factor);
9772 EXPECT_EQ(gfx::Rect(40, 40), clip_child->clip_rect());
9773 EXPECT_EQ(gfx::Rect(20, 20), clip_child->visible_layer_rect());
9774 }
9775
9776 TEST_F(LayerTreeHostCommonTest, ClipChildVisibleRect) { 9741 TEST_F(LayerTreeHostCommonTest, ClipChildVisibleRect) {
9777 LayerImpl* root = root_layer_for_testing(); 9742 LayerImpl* root = root_layer_for_testing();
9778 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>(); 9743 LayerImpl* clip_parent = AddChildToRoot<LayerImpl>();
9779 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent); 9744 LayerImpl* render_surface = AddChild<LayerImpl>(clip_parent);
9780 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface); 9745 LayerImpl* clip_child = AddChild<LayerImpl>(render_surface);
9781 9746
9782 root->SetBounds(gfx::Size(30, 30)); 9747 root->SetBounds(gfx::Size(30, 30));
9783 clip_parent->SetBounds(gfx::Size(40, 40)); 9748 clip_parent->SetBounds(gfx::Size(40, 40));
9784 clip_parent->SetMasksToBounds(true); 9749 clip_parent->SetMasksToBounds(true);
9785 render_surface->SetBounds(gfx::Size(50, 50)); 9750 render_surface->SetBounds(gfx::Size(50, 50));
(...skipping 629 matching lines...) Expand 10 before | Expand all | Expand 10 after
10415 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index()); 10380 EXPECT_EQ(scroll_child6.id, grand_child10->scroll_tree_index());
10416 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index()); 10381 EXPECT_EQ(scroll_root1.id, parent3->scroll_tree_index());
10417 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index()); 10382 EXPECT_EQ(scroll_child7.id, child8->scroll_tree_index());
10418 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index()); 10383 EXPECT_EQ(scroll_root1.id, parent4->scroll_tree_index());
10419 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index()); 10384 EXPECT_EQ(scroll_root1.id, child9->scroll_tree_index());
10420 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index()); 10385 EXPECT_EQ(scroll_root1.id, grand_child12->scroll_tree_index());
10421 } 10386 }
10422 10387
10423 } // namespace 10388 } // namespace
10424 } // namespace cc 10389 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_common.cc ('k') | cc/trees/property_tree.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698