summaryrefslogtreecommitdiffstats
path: root/cc
diff options
context:
space:
mode:
authorsohan.jyoti <sohan.jyoti@samsung.com>2015-06-24 12:16:37 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-24 19:17:24 +0000
commit0fba32ceb135da0931a4e3b4cd14c07f66634b3a (patch)
tree410250893bcde0731145fc9ed3ad33c0ff0ab5b0 /cc
parent7ac9fd6c5b4746b15f40f96f71a44ac566984f99 (diff)
downloadchromium_src-0fba32ceb135da0931a4e3b4cd14c07f66634b3a.zip
chromium_src-0fba32ceb135da0931a4e3b4cd14c07f66634b3a.tar.gz
chromium_src-0fba32ceb135da0931a4e3b4cd14c07f66634b3a.tar.bz2
Revert "cc: Make tiling interest rect calc based on viewport."
This reverts commit 6d84db54a27c036d77b0e4a26d42c158ee4a6add. Reason for revert: This creates perf regression with top-control and viewport resizes on android (creates and deletes extra tiles). TBR=vmpstr@chromium.org BUG=502432 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1196553009 Cr-Commit-Position: refs/heads/master@{#335971}
Diffstat (limited to 'cc')
-rw-r--r--cc/base/switches.cc3
-rw-r--r--cc/base/switches.h1
-rw-r--r--cc/debug/rasterize_and_record_benchmark_impl.cc3
-rw-r--r--cc/layers/picture_layer_impl.cc2
-rw-r--r--cc/layers/picture_layer_impl_perftest.cc9
-rw-r--r--cc/layers/picture_layer_impl_unittest.cc4
-rw-r--r--cc/tiles/picture_layer_tiling.cc17
-rw-r--r--cc/tiles/picture_layer_tiling.h6
-rw-r--r--cc/tiles/picture_layer_tiling_perftest.cc2
-rw-r--r--cc/tiles/picture_layer_tiling_set.cc15
-rw-r--r--cc/tiles/picture_layer_tiling_set.h6
-rw-r--r--cc/tiles/picture_layer_tiling_set_unittest.cc2
-rw-r--r--cc/tiles/picture_layer_tiling_unittest.cc15
-rw-r--r--cc/tiles/tile_manager_perftest.cc9
-rw-r--r--cc/tiles/tile_manager_unittest.cc12
-rw-r--r--cc/trees/layer_tree_settings.cc3
-rw-r--r--cc/trees/layer_tree_settings.h2
17 files changed, 49 insertions, 62 deletions
diff --git a/cc/base/switches.cc b/cc/base/switches.cc
index b95ac11..0a27205 100644
--- a/cc/base/switches.cc
+++ b/cc/base/switches.cc
@@ -35,6 +35,9 @@ const char kTopControlsShowThreshold[] = "top-controls-show-threshold";
// complete, such as --slow-down-raster-scale-factor=25.
const char kSlowDownRasterScaleFactor[] = "slow-down-raster-scale-factor";
+// Max tiles allowed for each tilings interest area.
+const char kMaxTilesForInterestArea[] = "max-tiles-for-interest-area";
+
// The amount of unused resource memory compositor is allowed to keep around.
const char kMaxUnusedResourceMemoryUsagePercentage[] =
"max-unused-resource-memory-usage-percentage";
diff --git a/cc/base/switches.h b/cc/base/switches.h
index 2d29341..cd5e367 100644
--- a/cc/base/switches.h
+++ b/cc/base/switches.h
@@ -25,6 +25,7 @@ CC_EXPORT extern const char kTopControlsHideThreshold[];
CC_EXPORT extern const char kTopControlsShowThreshold[];
CC_EXPORT extern const char kSlowDownRasterScaleFactor[];
CC_EXPORT extern const char kCompositeToMailbox[];
+CC_EXPORT extern const char kMaxTilesForInterestArea[];
CC_EXPORT extern const char kMaxUnusedResourceMemoryUsagePercentage[];
CC_EXPORT extern const char kStrictLayerPropertyChangeChecking[];
CC_EXPORT extern const char kEnablePropertyTreeVerification[];
diff --git a/cc/debug/rasterize_and_record_benchmark_impl.cc b/cc/debug/rasterize_and_record_benchmark_impl.cc
index 51e20ee..1dc110b 100644
--- a/cc/debug/rasterize_and_record_benchmark_impl.cc
+++ b/cc/debug/rasterize_and_record_benchmark_impl.cc
@@ -171,8 +171,7 @@ void RasterizeAndRecordBenchmarkImpl::RunOnLayer(PictureLayerImpl* layer) {
// really matter.
const LayerTreeSettings& settings = layer->layer_tree_impl()->settings();
scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create(
- layer->GetTree(), &client,
- settings.tiling_interest_area_viewport_multiplier,
+ layer->GetTree(), &client, settings.max_tiles_for_interest_area,
settings.skewport_target_time_in_seconds,
settings.skewport_extrapolation_limit_in_content_pixels);
diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
index 776e0bc..a0800db 100644
--- a/cc/layers/picture_layer_impl.cc
+++ b/cc/layers/picture_layer_impl.cc
@@ -1139,7 +1139,7 @@ scoped_ptr<PictureLayerTilingSet>
PictureLayerImpl::CreatePictureLayerTilingSet() {
const LayerTreeSettings& settings = layer_tree_impl()->settings();
return PictureLayerTilingSet::Create(
- GetTree(), this, settings.tiling_interest_area_viewport_multiplier,
+ GetTree(), this, settings.max_tiles_for_interest_area,
layer_tree_impl()->use_gpu_rasterization()
? settings.gpu_rasterization_skewport_target_time_in_seconds
: settings.skewport_target_time_in_seconds,
diff --git a/cc/layers/picture_layer_impl_perftest.cc b/cc/layers/picture_layer_impl_perftest.cc
index 4acd9b7c..d6cdb9b 100644
--- a/cc/layers/picture_layer_impl_perftest.cc
+++ b/cc/layers/picture_layer_impl_perftest.cc
@@ -36,18 +36,11 @@ void AddTiling(float scale,
tiling_tiles.begin(), tiling_tiles.end(), std::back_inserter(*all_tiles));
}
-class LayerTreeSettingsWithLargeInterestArea : public LayerTreeSettings {
- public:
- LayerTreeSettingsWithLargeInterestArea() {
- tiling_interest_area_viewport_multiplier = 10000;
- }
-};
-
class PictureLayerImplPerfTest : public testing::Test {
public:
PictureLayerImplPerfTest()
: proxy_(base::ThreadTaskRunnerHandle::Get()),
- host_impl_(LayerTreeSettingsWithLargeInterestArea(),
+ host_impl_(LayerTreeSettings(),
&proxy_,
&shared_bitmap_manager_,
&task_graph_runner_),
diff --git a/cc/layers/picture_layer_impl_unittest.cc b/cc/layers/picture_layer_impl_unittest.cc
index 83e37a0..bbfcffb 100644
--- a/cc/layers/picture_layer_impl_unittest.cc
+++ b/cc/layers/picture_layer_impl_unittest.cc
@@ -2488,8 +2488,8 @@ TEST_F(PictureLayerImplTest, RequiredTilesWithGpuRasterization) {
active_layer_->HighResTiling()->UpdateAllRequiredStateForTesting();
- // High res tiling should have 36 tiles (3X12 tile grid).
- EXPECT_EQ(36u, active_layer_->HighResTiling()->AllTilesForTesting().size());
+ // High res tiling should have 64 tiles (4x16 tile grid).
+ EXPECT_EQ(64u, active_layer_->HighResTiling()->AllTilesForTesting().size());
// Visible viewport should be covered by 4 tiles. No other
// tiles should be required for activation.
diff --git a/cc/tiles/picture_layer_tiling.cc b/cc/tiles/picture_layer_tiling.cc
index 0697c24..ef31f58 100644
--- a/cc/tiles/picture_layer_tiling.cc
+++ b/cc/tiles/picture_layer_tiling.cc
@@ -38,12 +38,12 @@ scoped_ptr<PictureLayerTiling> PictureLayerTiling::Create(
float contents_scale,
scoped_refptr<RasterSource> raster_source,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels) {
return make_scoped_ptr(new PictureLayerTiling(
- tree, contents_scale, raster_source, client,
- tiling_interest_area_viewport_multiplier, skewport_target_time_in_seconds,
+ tree, contents_scale, raster_source, client, max_tiles_for_interest_area,
+ skewport_target_time_in_seconds,
skewport_extrapolation_limit_in_content_pixels));
}
@@ -52,11 +52,10 @@ PictureLayerTiling::PictureLayerTiling(
float contents_scale,
scoped_refptr<RasterSource> raster_source,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels)
- : tiling_interest_area_viewport_multiplier_(
- tiling_interest_area_viewport_multiplier),
+ : max_tiles_for_interest_area_(max_tiles_for_interest_area),
skewport_target_time_in_seconds_(skewport_target_time_in_seconds),
skewport_extrapolation_limit_in_content_pixels_(
skewport_extrapolation_limit_in_content_pixels),
@@ -626,9 +625,9 @@ bool PictureLayerTiling::ComputeTilePriorityRects(
DCHECK(skewport.Contains(visible_rect_in_content_space));
// Calculate the eventually/live tiles rect.
- int64 eventually_rect_area = tiling_interest_area_viewport_multiplier_ *
- visible_rect_in_content_space.width() *
- visible_rect_in_content_space.height();
+ gfx::Size tile_size = tiling_data_.max_texture_size();
+ int64 eventually_rect_area =
+ max_tiles_for_interest_area_ * tile_size.width() * tile_size.height();
gfx::Rect eventually_rect =
ExpandRectEquallyToAreaBoundedBy(visible_rect_in_content_space,
diff --git a/cc/tiles/picture_layer_tiling.h b/cc/tiles/picture_layer_tiling.h
index bd1dd50..721f9e1 100644
--- a/cc/tiles/picture_layer_tiling.h
+++ b/cc/tiles/picture_layer_tiling.h
@@ -98,7 +98,7 @@ class CC_EXPORT PictureLayerTiling {
float contents_scale,
scoped_refptr<RasterSource> raster_source,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels);
@@ -287,7 +287,7 @@ class CC_EXPORT PictureLayerTiling {
float contents_scale,
scoped_refptr<RasterSource> raster_source,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels);
void SetLiveTilesRect(const gfx::Rect& live_tiles_rect);
@@ -375,7 +375,7 @@ class CC_EXPORT PictureLayerTiling {
}
void RemoveTilesInRegion(const Region& layer_region, bool recreate_tiles);
- const float tiling_interest_area_viewport_multiplier_;
+ const size_t max_tiles_for_interest_area_;
const float skewport_target_time_in_seconds_;
const int skewport_extrapolation_limit_in_content_pixels_;
diff --git a/cc/tiles/picture_layer_tiling_perftest.cc b/cc/tiles/picture_layer_tiling_perftest.cc
index dcb64eb..f27c227 100644
--- a/cc/tiles/picture_layer_tiling_perftest.cc
+++ b/cc/tiles/picture_layer_tiling_perftest.cc
@@ -49,7 +49,7 @@ class PictureLayerTilingPerfTest : public testing::Test {
gfx::Size(256 * 50, 256 * 50));
picture_layer_tiling_ = PictureLayerTiling::Create(
PENDING_TREE, 1.f, pile, &picture_layer_tiling_client_,
- defaults.tiling_interest_area_viewport_multiplier,
+ defaults.max_tiles_for_interest_area,
defaults.skewport_target_time_in_seconds,
defaults.skewport_extrapolation_limit_in_content_pixels);
picture_layer_tiling_->CreateAllTilesForTesting();
diff --git a/cc/tiles/picture_layer_tiling_set.cc b/cc/tiles/picture_layer_tiling_set.cc
index c61b58c..c820e81 100644
--- a/cc/tiles/picture_layer_tiling_set.cc
+++ b/cc/tiles/picture_layer_tiling_set.cc
@@ -33,11 +33,11 @@ inline float LargerRatio(float float1, float float2) {
scoped_ptr<PictureLayerTilingSet> PictureLayerTilingSet::Create(
WhichTree tree,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels) {
return make_scoped_ptr(new PictureLayerTilingSet(
- tree, client, tiling_interest_area_viewport_multiplier,
+ tree, client, max_tiles_for_interest_area,
skewport_target_time_in_seconds,
skewport_extrapolation_limit_in_content_pixels));
}
@@ -45,11 +45,10 @@ scoped_ptr<PictureLayerTilingSet> PictureLayerTilingSet::Create(
PictureLayerTilingSet::PictureLayerTilingSet(
WhichTree tree,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels)
- : tiling_interest_area_viewport_multiplier_(
- tiling_interest_area_viewport_multiplier),
+ : max_tiles_for_interest_area_(max_tiles_for_interest_area),
skewport_target_time_in_seconds_(skewport_target_time_in_seconds),
skewport_extrapolation_limit_in_content_pixels_(
skewport_extrapolation_limit_in_content_pixels),
@@ -79,8 +78,7 @@ void PictureLayerTilingSet::CopyTilingsAndPropertiesFromPendingTwin(
if (!this_tiling) {
scoped_ptr<PictureLayerTiling> new_tiling = PictureLayerTiling::Create(
tree_, contents_scale, raster_source, client_,
- tiling_interest_area_viewport_multiplier_,
- skewport_target_time_in_seconds_,
+ max_tiles_for_interest_area_, skewport_target_time_in_seconds_,
skewport_extrapolation_limit_in_content_pixels_);
tilings_.push_back(new_tiling.Pass());
this_tiling = tilings_.back();
@@ -261,8 +259,7 @@ PictureLayerTiling* PictureLayerTilingSet::AddTiling(
tilings_.push_back(PictureLayerTiling::Create(
tree_, contents_scale, raster_source, client_,
- tiling_interest_area_viewport_multiplier_,
- skewport_target_time_in_seconds_,
+ max_tiles_for_interest_area_, skewport_target_time_in_seconds_,
skewport_extrapolation_limit_in_content_pixels_));
PictureLayerTiling* appended = tilings_.back();
diff --git a/cc/tiles/picture_layer_tiling_set.h b/cc/tiles/picture_layer_tiling_set.h
index 46af6c4..dcaf775 100644
--- a/cc/tiles/picture_layer_tiling_set.h
+++ b/cc/tiles/picture_layer_tiling_set.h
@@ -40,7 +40,7 @@ class CC_EXPORT PictureLayerTilingSet {
static scoped_ptr<PictureLayerTilingSet> Create(
WhichTree tree,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content);
@@ -175,7 +175,7 @@ class CC_EXPORT PictureLayerTilingSet {
explicit PictureLayerTilingSet(
WhichTree tree,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time_in_seconds,
int skewport_extrapolation_limit_in_content_pixels);
@@ -190,7 +190,7 @@ class CC_EXPORT PictureLayerTilingSet {
ScopedPtrVector<PictureLayerTiling> tilings_;
- const float tiling_interest_area_viewport_multiplier_;
+ const size_t max_tiles_for_interest_area_;
const float skewport_target_time_in_seconds_;
const int skewport_extrapolation_limit_in_content_pixels_;
WhichTree tree_;
diff --git a/cc/tiles/picture_layer_tiling_set_unittest.cc b/cc/tiles/picture_layer_tiling_set_unittest.cc
index 8b001d9..e7593cd 100644
--- a/cc/tiles/picture_layer_tiling_set_unittest.cc
+++ b/cc/tiles/picture_layer_tiling_set_unittest.cc
@@ -25,7 +25,7 @@ scoped_ptr<PictureLayerTilingSet> CreateTilingSet(
PictureLayerTilingClient* client) {
LayerTreeSettings defaults;
return PictureLayerTilingSet::Create(
- ACTIVE_TREE, client, defaults.tiling_interest_area_viewport_multiplier,
+ ACTIVE_TREE, client, defaults.max_tiles_for_interest_area,
defaults.skewport_target_time_in_seconds,
defaults.skewport_extrapolation_limit_in_content_pixels);
}
diff --git a/cc/tiles/picture_layer_tiling_unittest.cc b/cc/tiles/picture_layer_tiling_unittest.cc
index 8eb2492..1c8a397 100644
--- a/cc/tiles/picture_layer_tiling_unittest.cc
+++ b/cc/tiles/picture_layer_tiling_unittest.cc
@@ -49,7 +49,7 @@ class TestablePictureLayerTiling : public PictureLayerTiling {
const LayerTreeSettings& settings) {
return make_scoped_ptr(new TestablePictureLayerTiling(
tree, contents_scale, raster_source, client,
- settings.tiling_interest_area_viewport_multiplier,
+ settings.max_tiles_for_interest_area,
settings.skewport_target_time_in_seconds,
settings.skewport_extrapolation_limit_in_content_pixels));
}
@@ -64,14 +64,14 @@ class TestablePictureLayerTiling : public PictureLayerTiling {
float contents_scale,
scoped_refptr<RasterSource> raster_source,
PictureLayerTilingClient* client,
- float tiling_interest_area_viewport_multiplier,
+ size_t max_tiles_for_interest_area,
float skewport_target_time,
int skewport_extrapolation_limit)
: PictureLayerTiling(tree,
contents_scale,
raster_source,
client,
- tiling_interest_area_viewport_multiplier,
+ max_tiles_for_interest_area,
skewport_target_time,
skewport_extrapolation_limit) {}
};
@@ -550,6 +550,7 @@ TEST(PictureLayerTilingTest, SkewportLimits) {
client.SetTileSize(gfx::Size(100, 100));
LayerTreeSettings settings;
+ settings.max_tiles_for_interest_area = 10000;
settings.skewport_extrapolation_limit_in_content_pixels = 75;
scoped_refptr<FakePicturePileImpl> pile =
@@ -792,7 +793,7 @@ TEST(PictureLayerTilingTest, ViewportDistanceWithScale) {
client.SetTileSize(gfx::Size(10, 10));
LayerTreeSettings settings;
- settings.tiling_interest_area_viewport_multiplier = 10000;
+ 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)
@@ -1292,7 +1293,7 @@ TEST_F(PictureLayerTilingIteratorTest,
gfx::Size layer_bounds(10000, 10000);
client_.SetTileSize(gfx::Size(100, 100));
LayerTreeSettings settings;
- settings.tiling_interest_area_viewport_multiplier = 1;
+ settings.max_tiles_for_interest_area = 1;
scoped_refptr<FakePicturePileImpl> pile =
FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(layer_bounds);
@@ -1749,7 +1750,7 @@ TEST(ComputeTilePriorityRectsTest, BasicMotion) {
client.SetTileSize(gfx::Size(100, 100));
LayerTreeSettings settings;
- settings.tiling_interest_area_viewport_multiplier = 10000;
+ settings.max_tiles_for_interest_area = 10000;
scoped_refptr<FakePicturePileImpl> pile =
FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(
@@ -1879,6 +1880,7 @@ TEST(PictureLayerTilingTest, RecycledTilesCleared) {
active_client.SetTileSize(gfx::Size(100, 100));
LayerTreeSettings settings;
+ settings.max_tiles_for_interest_area = 10;
scoped_refptr<FakePicturePileImpl> pile =
FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(
@@ -1946,6 +1948,7 @@ TEST(PictureLayerTilingTest, RecycledTilesClearedOnReset) {
recycle_client.set_twin_tiling(active_tiling.get());
LayerTreeSettings settings;
+ settings.max_tiles_for_interest_area = 10;
pile = FakePicturePileImpl::CreateFilledPileWithDefaultTileSize(
gfx::Size(100, 100));
diff --git a/cc/tiles/tile_manager_perftest.cc b/cc/tiles/tile_manager_perftest.cc
index d9b340d..c83144e 100644
--- a/cc/tiles/tile_manager_perftest.cc
+++ b/cc/tiles/tile_manager_perftest.cc
@@ -84,13 +84,6 @@ class FakeTileTaskRunnerImpl : public TileTaskRunner, public TileTaskClient {
base::LazyInstance<FakeTileTaskRunnerImpl> g_fake_tile_task_runner =
LAZY_INSTANCE_INITIALIZER;
-class LayerTreeSettingsWithLargeInterestArea : public LayerTreeSettings {
- public:
- LayerTreeSettingsWithLargeInterestArea() {
- tiling_interest_area_viewport_multiplier = 10000;
- }
-};
-
class TileManagerPerfTest : public testing::Test {
public:
TileManagerPerfTest()
@@ -98,7 +91,7 @@ class TileManagerPerfTest : public testing::Test {
max_tiles_(10000),
id_(7),
proxy_(base::ThreadTaskRunnerHandle::Get()),
- host_impl_(LayerTreeSettingsWithLargeInterestArea(),
+ host_impl_(LayerTreeSettings(),
&proxy_,
&shared_bitmap_manager_,
&task_graph_runner_),
diff --git a/cc/tiles/tile_manager_unittest.cc b/cc/tiles/tile_manager_unittest.cc
index 0c6451d..db1e5d7 100644
--- a/cc/tiles/tile_manager_unittest.cc
+++ b/cc/tiles/tile_manager_unittest.cc
@@ -29,10 +29,7 @@ namespace {
class LowResTilingsSettings : public LayerTreeSettings {
public:
- LowResTilingsSettings() {
- tiling_interest_area_viewport_multiplier = 10000;
- create_low_res_tiling = true;
- }
+ LowResTilingsSettings() { create_low_res_tiling = true; }
};
class TileManagerTilePriorityQueueTest : public testing::Test {
@@ -1162,10 +1159,10 @@ TEST_F(TileManagerTilePriorityQueueTest,
client.SetTileSize(gfx::Size(30, 30));
LayerTreeSettings settings;
- settings.tiling_interest_area_viewport_multiplier = 10000;
+ settings.max_tiles_for_interest_area = 10000;
scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create(
- ACTIVE_TREE, &client, settings.tiling_interest_area_viewport_multiplier,
+ ACTIVE_TREE, &client, settings.max_tiles_for_interest_area,
settings.skewport_target_time_in_seconds,
settings.skewport_extrapolation_limit_in_content_pixels);
@@ -1272,9 +1269,10 @@ TEST_F(TileManagerTilePriorityQueueTest,
client.SetTileSize(gfx::Size(30, 30));
LayerTreeSettings settings;
+ settings.max_tiles_for_interest_area = 10000;
scoped_ptr<PictureLayerTilingSet> tiling_set = PictureLayerTilingSet::Create(
- ACTIVE_TREE, &client, settings.tiling_interest_area_viewport_multiplier,
+ ACTIVE_TREE, &client, settings.max_tiles_for_interest_area,
settings.skewport_target_time_in_seconds,
settings.skewport_extrapolation_limit_in_content_pixels);
diff --git a/cc/trees/layer_tree_settings.cc b/cc/trees/layer_tree_settings.cc
index 2c78c51..92d7dda 100644
--- a/cc/trees/layer_tree_settings.cc
+++ b/cc/trees/layer_tree_settings.cc
@@ -52,7 +52,8 @@ LayerTreeSettings::LayerTreeSettings()
max_untiled_layer_size(gfx::Size(512, 512)),
default_tile_grid_size(gfx::Size(256, 256)),
minimum_occlusion_tracking_size(gfx::Size(160, 160)),
- tiling_interest_area_viewport_multiplier(9.0f),
+ // At 256x256 tiles, 128 tiles cover an area of 2048x4096 pixels.
+ max_tiles_for_interest_area(128),
skewport_target_time_in_seconds(1.0f),
skewport_extrapolation_limit_in_content_pixels(2000),
max_unused_resource_memory_percentage(100),
diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h
index 6592fae..6334f94 100644
--- a/cc/trees/layer_tree_settings.h
+++ b/cc/trees/layer_tree_settings.h
@@ -67,7 +67,7 @@ class CC_EXPORT LayerTreeSettings {
gfx::Size max_untiled_layer_size;
gfx::Size default_tile_grid_size;
gfx::Size minimum_occlusion_tracking_size;
- float tiling_interest_area_viewport_multiplier;
+ size_t max_tiles_for_interest_area;
float skewport_target_time_in_seconds;
int skewport_extrapolation_limit_in_content_pixels;
size_t max_unused_resource_memory_percentage;