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

Side by Side Diff: cc/layers/picture_layer_impl_unittest.cc

Issue 1591513002: cc: Early out of UpdateTiles for resoureceless draw (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/layers/picture_layer_impl.h" 5 #include "cc/layers/picture_layer_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <limits> 10 #include <limits>
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
539 tilings = active_layer_->tilings(); 539 tilings = active_layer_->tilings();
540 for (size_t i = 0; i < tilings->num_tilings(); i++) { 540 for (size_t i = 0; i < tilings->num_tilings(); i++) {
541 PictureLayerTiling* tiling = tilings->tiling_at(i); 541 PictureLayerTiling* tiling = tilings->tiling_at(i);
542 EXPECT_EQ( 542 EXPECT_EQ(
543 tiling->GetCurrentVisibleRectForTesting(), 543 tiling->GetCurrentVisibleRectForTesting(),
544 gfx::ScaleToEnclosingRect(viewport_rect_for_tile_priority_in_view_space, 544 gfx::ScaleToEnclosingRect(viewport_rect_for_tile_priority_in_view_space,
545 tiling->contents_scale())); 545 tiling->contents_scale()));
546 } 546 }
547 } 547 }
548 548
549 /*
549 TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) { 550 TEST_F(PictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
550 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); 551 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1));
551 gfx::Size layer_bounds(400, 400); 552 gfx::Size layer_bounds(400, 400);
552 SetupDefaultTrees(layer_bounds); 553 SetupDefaultTrees(layer_bounds);
553 554
554 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f, 555 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f,
555 false); 556 false);
556 557
557 // UpdateTiles with valid viewport. Should update tile viewport. 558 // UpdateTiles with valid viewport. Should update tile viewport.
558 // Note viewport is considered invalid if and only if in resourceless 559 // Note viewport is considered invalid if and only if in resourceless
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
621 inverse_tile_priority_transform, visible_rect_in_content_space); 622 inverse_tile_priority_transform, visible_rect_in_content_space);
622 visible_rect_in_content_space = MathUtil::ProjectClippedRect( 623 visible_rect_in_content_space = MathUtil::ProjectClippedRect(
623 inverse_draw_transform, visible_rect_in_content_space); 624 inverse_draw_transform, visible_rect_in_content_space);
624 625
625 ASSERT_GT(active_layer_->picture_layer_tiling_set()->num_tilings(), 0u); 626 ASSERT_GT(active_layer_->picture_layer_tiling_set()->num_tilings(), 0u);
626 EXPECT_EQ(gfx::ToEnclosingRect(visible_rect_in_content_space), 627 EXPECT_EQ(gfx::ToEnclosingRect(visible_rect_in_content_space),
627 active_layer_->picture_layer_tiling_set() 628 active_layer_->picture_layer_tiling_set()
628 ->tiling_at(0) 629 ->tiling_at(0)
629 ->GetCurrentVisibleRectForTesting()); 630 ->GetCurrentVisibleRectForTesting());
630 } 631 }
632 */
631 633
632 TEST_F(PictureLayerImplTest, ViewportRectForTilePriorityIsCached) { 634 TEST_F(PictureLayerImplTest, ViewportRectForTilePriorityIsCached) {
633 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); 635 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1));
634 gfx::Size layer_bounds(400, 400); 636 gfx::Size layer_bounds(400, 400);
635 SetupDefaultTrees(layer_bounds); 637 SetupDefaultTrees(layer_bounds);
636 638
637 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f, 639 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f,
638 false); 640 false);
639 641
640 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(200)); 642 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(200));
(...skipping 3021 matching lines...) Expand 10 before | Expand all | Expand 10 after
3662 // need content in order to activate. 3664 // need content in order to activate.
3663 pending_layer_->HighResTiling()->UpdateAllRequiredStateForTesting(); 3665 pending_layer_->HighResTiling()->UpdateAllRequiredStateForTesting();
3664 if (host_impl_.settings().create_low_res_tiling) 3666 if (host_impl_.settings().create_low_res_tiling)
3665 pending_layer_->LowResTiling()->UpdateAllRequiredStateForTesting(); 3667 pending_layer_->LowResTiling()->UpdateAllRequiredStateForTesting();
3666 3668
3667 AssertNoTilesRequired(pending_layer_->HighResTiling()); 3669 AssertNoTilesRequired(pending_layer_->HighResTiling());
3668 if (host_impl_.settings().create_low_res_tiling) 3670 if (host_impl_.settings().create_low_res_tiling)
3669 AssertNoTilesRequired(pending_layer_->LowResTiling()); 3671 AssertNoTilesRequired(pending_layer_->LowResTiling());
3670 } 3672 }
3671 3673
3674 /*
3672 TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) { 3675 TEST_F(NoLowResPictureLayerImplTest, InvalidViewportForPrioritizingTiles) {
3673 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1)); 3676 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(1));
3674 gfx::Size layer_bounds(400, 400); 3677 gfx::Size layer_bounds(400, 400);
3675 SetupDefaultTrees(layer_bounds); 3678 SetupDefaultTrees(layer_bounds);
3676 3679
3677 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f, 3680 SetupDrawPropertiesAndUpdateTiles(active_layer_, 1.f, 1.f, 1.f, 1.f, 0.f,
3678 false); 3681 false);
3679 3682
3680 // UpdateTiles with valid viewport. Should update tile viewport. 3683 // UpdateTiles with valid viewport. Should update tile viewport.
3681 // Note viewport is considered invalid if and only if in resourceless 3684 // Note viewport is considered invalid if and only if in resourceless
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
3715 // Keep expanded viewport but mark it valid. Should update tile viewport. 3718 // Keep expanded viewport but mark it valid. Should update tile viewport.
3716 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(200)); 3719 host_impl_.AdvanceToNextFrame(base::TimeDelta::FromMilliseconds(200));
3717 resourceless_software_draw = false; 3720 resourceless_software_draw = false;
3718 host_impl_.SetExternalTilePriorityConstraints(viewport, transform); 3721 host_impl_.SetExternalTilePriorityConstraints(viewport, transform);
3719 active_layer_->UpdateTiles(resourceless_software_draw); 3722 active_layer_->UpdateTiles(resourceless_software_draw);
3720 3723
3721 EXPECT_TRANSFORMATION_MATRIX_EQ( 3724 EXPECT_TRANSFORMATION_MATRIX_EQ(
3722 transform, active_layer_->draw_properties().screen_space_transform); 3725 transform, active_layer_->draw_properties().screen_space_transform);
3723 EXPECT_EQ(viewport, active_layer_->visible_rect_for_tile_priority()); 3726 EXPECT_EQ(viewport, active_layer_->visible_rect_for_tile_priority());
3724 } 3727 }
3728 */
3725 3729
3726 TEST_F(NoLowResPictureLayerImplTest, CleanUpTilings) { 3730 TEST_F(NoLowResPictureLayerImplTest, CleanUpTilings) {
3727 gfx::Size layer_bounds(1300, 1900); 3731 gfx::Size layer_bounds(1300, 1900);
3728 std::vector<PictureLayerTiling*> used_tilings; 3732 std::vector<PictureLayerTiling*> used_tilings;
3729 SetupDefaultTrees(layer_bounds); 3733 SetupDefaultTrees(layer_bounds);
3730 3734
3731 float low_res_factor = host_impl_.settings().low_res_contents_scale_factor; 3735 float low_res_factor = host_impl_.settings().low_res_contents_scale_factor;
3732 EXPECT_LT(low_res_factor, 1.f); 3736 EXPECT_LT(low_res_factor, 1.f);
3733 3737
3734 float device_scale = 1.7f; 3738 float device_scale = 1.7f;
(...skipping 1381 matching lines...) Expand 10 before | Expand all | Expand 10 after
5116 // New low res tiling. 5120 // New low res tiling.
5117 EXPECT_TRUE(tilings->tiling_at(2)->may_contain_low_resolution_tiles()); 5121 EXPECT_TRUE(tilings->tiling_at(2)->may_contain_low_resolution_tiles());
5118 5122
5119 // This tiling will be high res now, it won't contain low res content since it 5123 // This tiling will be high res now, it won't contain low res content since it
5120 // was all destroyed. 5124 // was all destroyed.
5121 EXPECT_FALSE(tilings->tiling_at(1)->may_contain_low_resolution_tiles()); 5125 EXPECT_FALSE(tilings->tiling_at(1)->may_contain_low_resolution_tiles());
5122 } 5126 }
5123 5127
5124 } // namespace 5128 } // namespace
5125 } // namespace cc 5129 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698