| Index: cc/resources/picture_layer_tiling_unittest.cc
|
| diff --git a/cc/resources/picture_layer_tiling_unittest.cc b/cc/resources/picture_layer_tiling_unittest.cc
|
| index 9190b98e48dd5e4662adfbd0ce5b256fb45ac5f0..1ed4613baf841e93bf3549661629acb373210d15 100644
|
| --- a/cc/resources/picture_layer_tiling_unittest.cc
|
| +++ b/cc/resources/picture_layer_tiling_unittest.cc
|
| @@ -54,17 +54,16 @@ class TestablePictureLayerTiling : public PictureLayerTiling {
|
| static scoped_ptr<TestablePictureLayerTiling> Create(
|
| float contents_scale,
|
| const gfx::Size& layer_bounds,
|
| - PictureLayerTilingClient* client) {
|
| + PictureLayerTilingClient* client,
|
| + const LayerTreeSettings& settings) {
|
| return make_scoped_ptr(new TestablePictureLayerTiling(
|
| - contents_scale,
|
| - layer_bounds,
|
| - client));
|
| + contents_scale, layer_bounds, client,
|
| + settings.max_tiles_for_interest_area,
|
| + settings.skewport_target_time_in_seconds,
|
| + settings.skewport_extrapolation_limit_in_content_pixels));
|
| }
|
|
|
| gfx::Rect live_tiles_rect() const { return live_tiles_rect_; }
|
| - bool eviction_tiles_cache_valid() const {
|
| - return eviction_tiles_cache_valid_;
|
| - }
|
|
|
| using PictureLayerTiling::ComputeSkewport;
|
| using PictureLayerTiling::RemoveTileAt;
|
| @@ -72,8 +71,16 @@ class TestablePictureLayerTiling : public PictureLayerTiling {
|
| protected:
|
| TestablePictureLayerTiling(float contents_scale,
|
| const gfx::Size& layer_bounds,
|
| - PictureLayerTilingClient* client)
|
| - : PictureLayerTiling(contents_scale, layer_bounds, client) { }
|
| + PictureLayerTilingClient* client,
|
| + size_t max_tiles_for_interest_area,
|
| + float skewport_target_time,
|
| + int skewport_extrapolation_limit)
|
| + : PictureLayerTiling(contents_scale,
|
| + layer_bounds,
|
| + client,
|
| + max_tiles_for_interest_area,
|
| + skewport_target_time,
|
| + skewport_extrapolation_limit) {}
|
| };
|
|
|
| class PictureLayerTilingIteratorTest : public testing::Test {
|
| @@ -86,9 +93,8 @@ class PictureLayerTilingIteratorTest : public testing::Test {
|
| const gfx::Size& layer_bounds) {
|
| client_.SetTileSize(tile_size);
|
| client_.set_tree(PENDING_TREE);
|
| - tiling_ = TestablePictureLayerTiling::Create(contents_scale,
|
| - layer_bounds,
|
| - &client_);
|
| + tiling_ = TestablePictureLayerTiling::Create(contents_scale, layer_bounds,
|
| + &client_, LayerTreeSettings());
|
| }
|
|
|
| void SetLiveRectAndVerifyTiles(const gfx::Rect& live_tiles_rect) {
|
| @@ -180,10 +186,6 @@ class PictureLayerTilingIteratorTest : public testing::Test {
|
| VerifyTilesExactlyCoverRect(rect_scale, dest_rect, clamped_rect);
|
| }
|
|
|
| - void set_max_tiles_for_interest_area(size_t area) {
|
| - client_.set_max_tiles_for_interest_area(area);
|
| - }
|
| -
|
| protected:
|
| FakePictureLayerTilingClient client_;
|
| scoped_ptr<TestablePictureLayerTiling> tiling_;
|
| @@ -208,14 +210,15 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeDeletesTiles) {
|
|
|
| Region invalidation =
|
| SubtractRegions(gfx::Rect(tile_size), gfx::Rect(original_layer_size));
|
| - tiling_->UpdateTilesToCurrentRasterSource(client_.raster_source(),
|
| - invalidation, gfx::Size(200, 200));
|
| + tiling_->Resize(gfx::Size(200, 200));
|
| + EXPECT_TRUE(tiling_->TileAt(0, 0));
|
| + tiling_->Invalidate(invalidation);
|
| EXPECT_FALSE(tiling_->TileAt(0, 0));
|
| }
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, CreateMissingTilesStaysInsideLiveRect) {
|
| // The tiling has three rows and columns.
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 250));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 250));
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -243,7 +246,7 @@ TEST_F(PictureLayerTilingIteratorTest, CreateMissingTilesStaysInsideLiveRect) {
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) {
|
| // The tiling has four rows and three columns.
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -263,9 +266,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) {
|
|
|
| // Shrink the tiling so that the last tile row/column is entirely in the
|
| // border pixels of the interior tiles. That row/column is removed.
|
| - Region invalidation;
|
| - tiling_->UpdateTilesToCurrentRasterSource(
|
| - client_.raster_source(), invalidation, gfx::Size(right + 1, bottom + 1));
|
| + tiling_->Resize(gfx::Size(right + 1, bottom + 1));
|
| EXPECT_EQ(2, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -282,8 +283,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) {
|
|
|
| // Growing outside the current right/bottom tiles border pixels should create
|
| // the tiles again, even though the live rect has not changed size.
|
| - tiling_->UpdateTilesToCurrentRasterSource(
|
| - client_.raster_source(), invalidation, gfx::Size(right + 2, bottom + 2));
|
| + tiling_->Resize(gfx::Size(right + 2, bottom + 2));
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -306,7 +306,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) {
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverTileBorders) {
|
| // The tiling has three rows and columns.
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -371,7 +371,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverTileBorders) {
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverSameTiles) {
|
| // The tiling has four rows and three columns.
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
|
| EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
|
| EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
|
|
|
| @@ -419,8 +419,9 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeOverBorderPixelsDeletesTiles) {
|
|
|
| Region invalidation =
|
| SubtractRegions(gfx::Rect(tile_size), gfx::Rect(original_layer_size));
|
| - tiling_->UpdateTilesToCurrentRasterSource(client_.raster_source(),
|
| - invalidation, gfx::Size(200, 200));
|
| + tiling_->Resize(gfx::Size(200, 200));
|
| + EXPECT_TRUE(tiling_->TileAt(0, 0));
|
| + tiling_->Invalidate(invalidation);
|
| EXPECT_FALSE(tiling_->TileAt(0, 0));
|
|
|
| // The original tile was the same size after resize, but it would include new
|
| @@ -430,7 +431,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeOverBorderPixelsDeletesTiles) {
|
| }
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, LiveTilesExactlyCoverLiveTileRect) {
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(1099, 801));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(1099, 801));
|
| SetLiveRectAndVerifyTiles(gfx::Rect(100, 100));
|
| SetLiveRectAndVerifyTiles(gfx::Rect(101, 99));
|
| SetLiveRectAndVerifyTiles(gfx::Rect(1099, 1));
|
| @@ -440,13 +441,13 @@ TEST_F(PictureLayerTilingIteratorTest, LiveTilesExactlyCoverLiveTileRect) {
|
| }
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, IteratorCoversLayerBoundsNoScale) {
|
| - Initialize(gfx::Size(100, 100), 1, gfx::Size(1099, 801));
|
| + Initialize(gfx::Size(100, 100), 1.f, gfx::Size(1099, 801));
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect());
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1099, 801));
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect(52, 83, 789, 412));
|
|
|
| // With borders, a size of 3x3 = 1 pixel of content.
|
| - Initialize(gfx::Size(3, 3), 1, gfx::Size(10, 10));
|
| + Initialize(gfx::Size(3, 3), 1.f, gfx::Size(10, 10));
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1, 1));
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 2, 2));
|
| VerifyTilesExactlyCoverRect(1, gfx::Rect(1, 1, 2, 2));
|
| @@ -532,7 +533,6 @@ TEST_F(PictureLayerTilingIteratorTest, NonContainedDestRect) {
|
|
|
| TEST(PictureLayerTilingTest, SkewportLimits) {
|
| FakePictureLayerTilingClient client;
|
| - client.set_skewport_extrapolation_limit_in_content_pixels(75);
|
| client.set_tree(ACTIVE_TREE);
|
| scoped_ptr<TestablePictureLayerTiling> tiling;
|
|
|
| @@ -540,7 +540,11 @@ TEST(PictureLayerTilingTest, SkewportLimits) {
|
| gfx::Size layer_bounds(200, 200);
|
|
|
| client.SetTileSize(gfx::Size(100, 100));
|
| - tiling = TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10000;
|
| + settings.skewport_extrapolation_limit_in_content_pixels = 75;
|
| + tiling =
|
| + TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client, settings);
|
|
|
| tiling->ComputeTilePriorityRects(viewport, 1.f, 1.0, Occlusion());
|
|
|
| @@ -606,7 +610,8 @@ TEST(PictureLayerTilingTest, ComputeSkewport) {
|
|
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| - tiling = TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client);
|
| + tiling = TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport, 1.f, 1.0, Occlusion());
|
|
|
| @@ -665,13 +670,16 @@ TEST(PictureLayerTilingTest, ViewportDistanceWithScale) {
|
|
|
| client.SetTileSize(gfx::Size(10, 10));
|
| client.set_tree(ACTIVE_TREE);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10000;
|
|
|
| // Tiling at 0.25 scale: this should create 47x47 tiles of size 10x10.
|
| // The reason is that each tile has a one pixel border, so tile at (1, 2)
|
| // for instance begins at (8, 16) pixels. So tile at (46, 46) will begin at
|
| // (368, 368) and extend to the end of 1500 * 0.25 = 375 edge of the
|
| // tiling.
|
| - tiling = TestablePictureLayerTiling::Create(0.25f, layer_bounds, &client);
|
| + tiling = TestablePictureLayerTiling::Create(0.25f, layer_bounds, &client,
|
| + settings);
|
| gfx::Rect viewport_in_content_space =
|
| gfx::ToEnclosedRect(gfx::ScaleRect(viewport, 0.25f));
|
|
|
| @@ -825,7 +833,8 @@ TEST(PictureLayerTilingTest, ViewportDistanceWithScale) {
|
| EXPECT_FLOAT_EQ(8.f, priority.distance_to_visible);
|
|
|
| // Test additional scales.
|
| - tiling = TestablePictureLayerTiling::Create(0.2f, layer_bounds, &client);
|
| + tiling = TestablePictureLayerTiling::Create(0.2f, layer_bounds, &client,
|
| + LayerTreeSettings());
|
| tiling->ComputeTilePriorityRects(viewport, 1.0f, 4.0, Occlusion());
|
| tiling->UpdateAllTilePrioritiesForTesting();
|
|
|
| @@ -1085,8 +1094,11 @@ TEST(PictureLayerTilingTest, TilingRasterTileIteratorStaticViewport) {
|
|
|
| client.SetTileSize(gfx::Size(30, 30));
|
| client.set_tree(ACTIVE_TREE);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10000;
|
|
|
| - tiling = TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client);
|
| + tiling =
|
| + TestablePictureLayerTiling::Create(1.0f, layer_bounds, &client, settings);
|
| tiling->ComputeTilePriorityRects(viewport, 1.0f, 1.0, Occlusion());
|
| tiling->UpdateAllTilePrioritiesForTesting();
|
|
|
| @@ -1190,8 +1202,11 @@ TEST(PictureLayerTilingTest, TilingRasterTileIteratorMovingViewport) {
|
|
|
| client.SetTileSize(gfx::Size(30, 30));
|
| client.set_tree(ACTIVE_TREE);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10000;
|
|
|
| - tiling = TestablePictureLayerTiling::Create(1.f, layer_bounds, &client);
|
| + tiling =
|
| + TestablePictureLayerTiling::Create(1.f, layer_bounds, &client, settings);
|
| tiling->ComputeTilePriorityRects(viewport, 1.0f, 1.0, Occlusion());
|
| tiling->ComputeTilePriorityRects(moved_viewport, 1.0f, 2.0, Occlusion());
|
| tiling->UpdateAllTilePrioritiesForTesting();
|
| @@ -1326,14 +1341,19 @@ static void TilesIntersectingRectExist(const gfx::Rect& rect,
|
| TEST_F(PictureLayerTilingIteratorTest,
|
| TilesExistLargeViewportAndLayerWithSmallVisibleArea) {
|
| gfx::Size layer_bounds(10000, 10000);
|
| - Initialize(gfx::Size(100, 100), 1.f, layer_bounds);
|
| + client_.SetTileSize(gfx::Size(100, 100));
|
| + client_.set_tree(PENDING_TREE);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 1;
|
| +
|
| + tiling_ =
|
| + TestablePictureLayerTiling::Create(1.f, layer_bounds, &client_, settings);
|
| VerifyTilesExactlyCoverRect(1.f, gfx::Rect(layer_bounds));
|
| VerifyTiles(1.f, gfx::Rect(layer_bounds), base::Bind(&TileExists, false));
|
|
|
| gfx::Rect visible_rect(8000, 8000, 50, 50);
|
|
|
| client_.set_tree(ACTIVE_TREE);
|
| - set_max_tiles_for_interest_area(1);
|
| tiling_->ComputeTilePriorityRects(visible_rect, // visible content rect
|
| 1.f, // current contents scale
|
| 1.0, // current frame time
|
| @@ -1350,7 +1370,10 @@ TEST_F(PictureLayerTilingIteratorTest, AddTilingsToMatchScale) {
|
| client_.SetTileSize(tile_size);
|
| client_.set_tree(PENDING_TREE);
|
|
|
| - auto active_set = PictureLayerTilingSet::Create(&client_);
|
| + LayerTreeSettings defaults;
|
| + auto active_set = PictureLayerTilingSet::Create(
|
| + &client_, 10000, defaults.skewport_target_time_in_seconds,
|
| + defaults.skewport_extrapolation_limit_in_content_pixels);
|
|
|
| active_set->AddTiling(1.f, layer_bounds);
|
|
|
| @@ -1367,10 +1390,12 @@ TEST_F(PictureLayerTilingIteratorTest, AddTilingsToMatchScale) {
|
| base::Bind(&TileExists, true));
|
|
|
| // Add the same tilings to the pending set.
|
| - auto pending_set = PictureLayerTilingSet::Create(&client_);
|
| + auto pending_set = PictureLayerTilingSet::Create(
|
| + &client_, 10000, defaults.skewport_target_time_in_seconds,
|
| + defaults.skewport_extrapolation_limit_in_content_pixels);
|
| Region invalidation;
|
| - pending_set->SyncTilings(*active_set, layer_bounds, invalidation, 0.f,
|
| - client_.raster_source());
|
| + pending_set->SyncTilingsForTesting(*active_set, layer_bounds, invalidation,
|
| + 0.f, client_.raster_source());
|
|
|
| // The pending tiling starts with no tiles.
|
| VerifyTiles(pending_set->tiling_at(0), 1.f, gfx::Rect(layer_bounds),
|
| @@ -1407,8 +1432,8 @@ TEST(ComputeTilePriorityRectsTest, VisibleTiles) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1461,8 +1486,8 @@ TEST(ComputeTilePriorityRectsTest, OffscreenTiles) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1525,8 +1550,8 @@ TEST(ComputeTilePriorityRectsTest, PartiallyOffscreenLayer) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1583,8 +1608,8 @@ TEST(ComputeTilePriorityRectsTest, PartiallyOffscreenRotatedLayer) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1665,8 +1690,8 @@ TEST(ComputeTilePriorityRectsTest, PerspectiveLayer) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1757,8 +1782,8 @@ TEST(ComputeTilePriorityRectsTest, PerspectiveLayerClippedByW) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| current_layer_contents_scale,
|
| @@ -1818,9 +1843,11 @@ TEST(ComputeTilePriorityRectsTest, BasicMotion) {
|
|
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10000;
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + settings);
|
|
|
| // previous ("last") frame
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| @@ -1894,8 +1921,8 @@ TEST(ComputeTilePriorityRectsTest, RotationMotion) {
|
| client.SetTileSize(gfx::Size(100, 100));
|
| client.set_tree(ACTIVE_TREE);
|
| tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - current_layer_bounds,
|
| - &client);
|
| + current_layer_bounds, &client,
|
| + LayerTreeSettings());
|
|
|
| // previous ("last") frame
|
| tiling->ComputeTilePriorityRects(viewport_in_layer_space,
|
| @@ -1942,10 +1969,11 @@ TEST(PictureLayerTilingTest, RecycledTilesCleared) {
|
|
|
| active_client.SetTileSize(gfx::Size(100, 100));
|
| active_client.set_tree(ACTIVE_TREE);
|
| - active_client.set_max_tiles_for_interest_area(10);
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10;
|
| active_tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| gfx::Size(10000, 10000),
|
| - &active_client);
|
| + &active_client, settings);
|
| // Create all tiles on this tiling.
|
| active_tiling->ComputeTilePriorityRects(gfx::Rect(0, 0, 100, 100), 1.0f, 1.0f,
|
| Occlusion());
|
| @@ -1954,12 +1982,11 @@ TEST(PictureLayerTilingTest, RecycledTilesCleared) {
|
| recycle_client.SetTileSize(gfx::Size(100, 100));
|
| recycle_client.set_tree(PENDING_TREE);
|
| recycle_client.set_twin_tiling(active_tiling.get());
|
| - recycle_client.set_max_tiles_for_interest_area(10);
|
|
|
| scoped_ptr<TestablePictureLayerTiling> recycle_tiling;
|
| - recycle_tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - gfx::Size(10000, 10000),
|
| - &recycle_client);
|
| + recycle_tiling = TestablePictureLayerTiling::Create(
|
| + 1.0f, // contents_scale
|
| + gfx::Size(10000, 10000), &recycle_client, settings);
|
|
|
| // Create all tiles on the second tiling. All tiles should be shared.
|
| recycle_tiling->ComputeTilePriorityRects(gfx::Rect(0, 0, 100, 100), 1.0f,
|
| @@ -1986,9 +2013,9 @@ TEST(PictureLayerTilingTest, RecycledTilesCleared) {
|
| active_tiling->ComputeTilePriorityRects(gfx::Rect(0, 0, 100, 100), 1.0f, 3.0,
|
| Occlusion());
|
|
|
| - // Ensure that we now have a tile here, but the recycle tiling does not.
|
| + // Ensure that we now have a tile here on both tilings again.
|
| EXPECT_TRUE(active_tiling->TileAt(0, 0));
|
| - EXPECT_FALSE(recycle_tiling->TileAt(0, 0));
|
| + EXPECT_TRUE(recycle_tiling->TileAt(0, 0));
|
| }
|
|
|
| TEST(PictureLayerTilingTest, RecycledTilesClearedOnReset) {
|
| @@ -1997,9 +2024,9 @@ TEST(PictureLayerTilingTest, RecycledTilesClearedOnReset) {
|
|
|
| active_client.SetTileSize(gfx::Size(100, 100));
|
| active_client.set_tree(ACTIVE_TREE);
|
| - active_tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - gfx::Size(100, 100),
|
| - &active_client);
|
| + active_tiling = TestablePictureLayerTiling::Create(
|
| + 1.0f, // contents_scale
|
| + gfx::Size(100, 100), &active_client, LayerTreeSettings());
|
| // Create all tiles on this tiling.
|
| active_tiling->ComputeTilePriorityRects(gfx::Rect(0, 0, 100, 100), 1.0f, 1.0f,
|
| Occlusion());
|
| @@ -2008,12 +2035,13 @@ TEST(PictureLayerTilingTest, RecycledTilesClearedOnReset) {
|
| recycle_client.SetTileSize(gfx::Size(100, 100));
|
| recycle_client.set_tree(PENDING_TREE);
|
| recycle_client.set_twin_tiling(active_tiling.get());
|
| - recycle_client.set_max_tiles_for_interest_area(10);
|
|
|
| + LayerTreeSettings settings;
|
| + settings.max_tiles_for_interest_area = 10;
|
| scoped_ptr<TestablePictureLayerTiling> recycle_tiling;
|
| - recycle_tiling = TestablePictureLayerTiling::Create(1.0f, // contents_scale
|
| - gfx::Size(100, 100),
|
| - &recycle_client);
|
| + recycle_tiling = TestablePictureLayerTiling::Create(
|
| + 1.0f, // contents_scale
|
| + gfx::Size(100, 100), &recycle_client, settings);
|
|
|
| // Create all tiles on the recycle tiling. All tiles should be shared.
|
| recycle_tiling->ComputeTilePriorityRects(gfx::Rect(0, 0, 100, 100), 1.0f,
|
| @@ -2037,7 +2065,7 @@ TEST(PictureLayerTilingTest, RecycledTilesClearedOnReset) {
|
|
|
| TEST_F(PictureLayerTilingIteratorTest, ResizeTilesAndUpdateToCurrent) {
|
| // The tiling has four rows and three columns.
|
| - Initialize(gfx::Size(150, 100), 1, gfx::Size(250, 150));
|
| + Initialize(gfx::Size(150, 100), 1.f, gfx::Size(250, 150));
|
| tiling_->CreateAllTilesForTesting();
|
| EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width());
|
| EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height());
|
| @@ -2050,9 +2078,7 @@ TEST_F(PictureLayerTilingIteratorTest, ResizeTilesAndUpdateToCurrent) {
|
| EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width());
|
| EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height());
|
|
|
| - Region invalidation;
|
| - tiling_->UpdateTilesToCurrentRasterSource(client_.raster_source(),
|
| - invalidation, gfx::Size(250, 150));
|
| + tiling_->Resize(gfx::Size(250, 150));
|
|
|
| // Tile size in the tiling should be resized to 250x200.
|
| EXPECT_EQ(250, tiling_->TilingDataForTesting().max_texture_size().width());
|
|
|