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

Unified Diff: cc/layers/picture_image_layer_impl_unittest.cc

Issue 343653004: cc: Don't add new tilings while syncing a tiling. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: managetilingsinsync: perftest Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/layers/picture_image_layer_impl.cc ('k') | cc/layers/picture_layer_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layers/picture_image_layer_impl_unittest.cc
diff --git a/cc/layers/picture_image_layer_impl_unittest.cc b/cc/layers/picture_image_layer_impl_unittest.cc
index e6f1f347ae4051d8f013705c6c2fe3a6cb3bf34e..e8eb8ff627756b6850884a22f7a9130c93d7bd41 100644
--- a/cc/layers/picture_image_layer_impl_unittest.cc
+++ b/cc/layers/picture_image_layer_impl_unittest.cc
@@ -26,18 +26,8 @@ class TestablePictureImageLayerImpl : public PictureImageLayerImpl {
}
using PictureLayerImpl::UpdateIdealScales;
using PictureLayerImpl::MaximumTilingContentsScale;
- using PictureLayerImpl::ManageTilings;
using PictureLayerImpl::DoPostCommitInitializationIfNeeded;
- void ScaleAndManageTilings(bool animating_transform_to_screen,
- float maximum_animation_contents_scale) {
- DoPostCommitInitializationIfNeeded();
- if (CanHaveTilings()) {
- UpdateIdealScales();
- ManageTilings(animating_transform_to_screen,
- maximum_animation_contents_scale);
- }
- }
PictureLayerTilingSet* tilings() { return tilings_.get(); }
friend class PictureImageLayerImplTest;
@@ -80,13 +70,12 @@ class PictureImageLayerImplTest : public testing::Test {
return make_scoped_ptr(layer);
}
- void SetupDrawPropertiesAndManageTilings(
- TestablePictureImageLayerImpl* layer,
- float ideal_contents_scale,
- float device_scale_factor,
- float page_scale_factor,
- float maximum_animation_contents_scale,
- bool animating_transform_to_screen) {
+ void SetupDrawPropertiesAndUpdateTiles(TestablePictureImageLayerImpl* layer,
+ float ideal_contents_scale,
+ float device_scale_factor,
+ float page_scale_factor,
+ float maximum_animation_contents_scale,
+ bool animating_transform_to_screen) {
layer->draw_properties().ideal_contents_scale = ideal_contents_scale;
layer->draw_properties().device_scale_factor = device_scale_factor;
layer->draw_properties().page_scale_factor = page_scale_factor;
@@ -94,8 +83,7 @@ class PictureImageLayerImplTest : public testing::Test {
maximum_animation_contents_scale;
layer->draw_properties().screen_space_transform_is_animating =
animating_transform_to_screen;
- layer->ScaleAndManageTilings(animating_transform_to_screen,
- maximum_animation_contents_scale);
+ layer->UpdateTiles();
}
protected:
@@ -109,7 +97,7 @@ TEST_F(PictureImageLayerImplTest, CalculateContentsScale) {
scoped_ptr<TestablePictureImageLayerImpl> layer(CreateLayer(1, PENDING_TREE));
layer->SetDrawsContent(true);
- SetupDrawPropertiesAndManageTilings(layer.get(), 2.f, 3.f, 4.f, 1.f, false);
+ SetupDrawPropertiesAndUpdateTiles(layer.get(), 2.f, 3.f, 4.f, 1.f, false);
EXPECT_FLOAT_EQ(1.f, layer->contents_scale_x());
EXPECT_FLOAT_EQ(1.f, layer->contents_scale_y());
@@ -128,24 +116,27 @@ TEST_F(PictureImageLayerImplTest, IgnoreIdealContentScale) {
const float page_scale_factor = 4.f;
const float maximum_animation_contents_scale = 1.f;
const bool animating_transform_to_screen = false;
- SetupDrawPropertiesAndManageTilings(pending_layer.get(),
- suggested_ideal_contents_scale,
- device_scale_factor,
- page_scale_factor,
- maximum_animation_contents_scale,
- animating_transform_to_screen);
+ SetupDrawPropertiesAndUpdateTiles(pending_layer.get(),
+ suggested_ideal_contents_scale,
+ device_scale_factor,
+ page_scale_factor,
+ maximum_animation_contents_scale,
+ animating_transform_to_screen);
+ EXPECT_EQ(1.f, pending_layer->tilings()->tiling_at(0)->contents_scale());
// Push to active layer.
+ host_impl_.pending_tree()->SetRootLayer(pending_layer.PassAs<LayerImpl>());
host_impl_.ActivatePendingTree();
- scoped_ptr<TestablePictureImageLayerImpl> active_layer(
- CreateLayer(1, ACTIVE_TREE));
- pending_layer->PushPropertiesTo(active_layer.get());
- SetupDrawPropertiesAndManageTilings(active_layer.get(),
- suggested_ideal_contents_scale,
- device_scale_factor,
- page_scale_factor,
- maximum_animation_contents_scale,
- animating_transform_to_screen);
+ TestablePictureImageLayerImpl* active_layer =
+ static_cast<TestablePictureImageLayerImpl*>(
Nico 2015/12/02 17:29:29 ubsan points out that this cast is not valid: [ R
danakj 2015/12/02 23:14:15 Thanks. Looks like TestablePictureImageLayerImpl d
+ host_impl_.active_tree()->root_layer());
+ SetupDrawPropertiesAndUpdateTiles(active_layer,
+ suggested_ideal_contents_scale,
+ device_scale_factor,
+ page_scale_factor,
+ maximum_animation_contents_scale,
+ animating_transform_to_screen);
+ EXPECT_EQ(1.f, active_layer->tilings()->tiling_at(0)->contents_scale());
// Create tile and resource.
active_layer->tilings()->tiling_at(0)->CreateAllTilesForTesting();
« no previous file with comments | « cc/layers/picture_image_layer_impl.cc ('k') | cc/layers/picture_layer_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698