| Index: cc/resources/tile_manager.cc
|
| diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc
|
| index 4f9f0aed6545b1792c93111f34313194c1268288..950323a5628fc88fb463829cb7a793a49111c483 100644
|
| --- a/cc/resources/tile_manager.cc
|
| +++ b/cc/resources/tile_manager.cc
|
| @@ -170,6 +170,7 @@ scoped_ptr<TileManager> TileManager::Create(
|
| ContextProvider* context_provider,
|
| RenderingStatsInstrumentation* rendering_stats_instrumentation,
|
| bool use_map_image,
|
| + bool use_rasterize_on_demand,
|
| size_t max_transfer_buffer_usage_bytes,
|
| size_t max_raster_usage_bytes,
|
| unsigned map_image_texture_target) {
|
| @@ -184,7 +185,8 @@ scoped_ptr<TileManager> TileManager::Create(
|
| context_provider,
|
| max_transfer_buffer_usage_bytes),
|
| max_raster_usage_bytes,
|
| - rendering_stats_instrumentation));
|
| + rendering_stats_instrumentation,
|
| + use_rasterize_on_demand));
|
| }
|
|
|
| TileManager::TileManager(
|
| @@ -192,7 +194,8 @@ TileManager::TileManager(
|
| ResourceProvider* resource_provider,
|
| scoped_ptr<RasterWorkerPool> raster_worker_pool,
|
| size_t max_raster_usage_bytes,
|
| - RenderingStatsInstrumentation* rendering_stats_instrumentation)
|
| + RenderingStatsInstrumentation* rendering_stats_instrumentation,
|
| + bool use_rasterize_on_demand)
|
| : client_(client),
|
| resource_pool_(
|
| ResourcePool::Create(resource_provider,
|
| @@ -210,7 +213,8 @@ TileManager::TileManager(
|
| ever_exceeded_memory_budget_(false),
|
| rendering_stats_instrumentation_(rendering_stats_instrumentation),
|
| did_initialize_visible_tile_(false),
|
| - did_check_for_completed_tasks_since_last_schedule_tasks_(true) {
|
| + did_check_for_completed_tasks_since_last_schedule_tasks_(true),
|
| + use_rasterize_on_demand_(use_rasterize_on_demand) {
|
| raster_worker_pool_->SetClient(this);
|
| }
|
|
|
| @@ -324,7 +328,8 @@ void TileManager::DidFinishRunningTasks() {
|
| // If we can't raster on demand, give up early (and don't activate).
|
| if (!allow_rasterize_on_demand)
|
| return;
|
| - tile_version.set_rasterize_on_demand();
|
| + if (use_rasterize_on_demand_)
|
| + tile_version.set_rasterize_on_demand();
|
| }
|
| }
|
|
|
| @@ -697,7 +702,7 @@ void TileManager::AssignGpuMemoryToTiles(
|
| // This tile was already on screen and now its resources have been
|
| // released. In order to prevent checkerboarding, set this tile as
|
| // rasterize on demand immediately.
|
| - if (mts.visible_and_ready_to_draw)
|
| + if (mts.visible_and_ready_to_draw && use_rasterize_on_demand_)
|
| tile_version.set_rasterize_on_demand();
|
|
|
| oomed = true;
|
|
|