| Index: cc/tiles/tile_manager.cc
|
| diff --git a/cc/tiles/tile_manager.cc b/cc/tiles/tile_manager.cc
|
| index 3f83286c06e957cad16ce59961d870bf35d2ee74..aab3047b3343be0aa2a889f2258d490f2dae0a54 100644
|
| --- a/cc/tiles/tile_manager.cc
|
| +++ b/cc/tiles/tile_manager.cc
|
| @@ -347,9 +347,8 @@
|
| // uninitialized resources.
|
| tile_task_manager_->Shutdown();
|
|
|
| - raster_buffer_provider_->Shutdown();
|
| -
|
| - // Now that all tasks have been finished, we can clear any |orphan_tasks_|.
|
| + // Now that all tasks have been finished, we can clear any
|
| + // |orphan_tasks_|.
|
| orphan_tasks_.clear();
|
|
|
| tile_task_manager_->CheckForCompletedTasks();
|
| @@ -371,7 +370,6 @@
|
| void TileManager::SetResources(ResourcePool* resource_pool,
|
| ImageDecodeController* image_decode_controller,
|
| TileTaskManager* tile_task_manager,
|
| - RasterBufferProvider* raster_buffer_provider,
|
| size_t scheduled_raster_task_limit,
|
| bool use_gpu_rasterization) {
|
| DCHECK(!tile_task_manager_);
|
| @@ -382,7 +380,6 @@
|
| resource_pool_ = resource_pool;
|
| image_decode_controller_ = image_decode_controller;
|
| tile_task_manager_ = tile_task_manager;
|
| - raster_buffer_provider_ = raster_buffer_provider;
|
| }
|
|
|
| void TileManager::Release(Tile* tile) {
|
| @@ -881,11 +878,6 @@
|
| // below, so we do a swap instead of a move.
|
| locked_images_.swap(new_locked_images);
|
|
|
| - // We must reduce the amount of unused resources before calling
|
| - // ScheduleTasks to prevent usage from rising above limits.
|
| - resource_pool_->ReduceResourceUsage();
|
| - image_decode_controller_->ReduceCacheUsage();
|
| -
|
| // Insert nodes for our task completion tasks. We enqueue these using
|
| // NONCONCURRENT_FOREGROUND category this is the highest prioirty category and
|
| // we'd like to run these tasks as soon as possible.
|
| @@ -900,8 +892,10 @@
|
| TASK_CATEGORY_NONCONCURRENT_FOREGROUND,
|
| kAllDoneTaskPriority, all_count);
|
|
|
| - // Synchronize worker with compositor.
|
| - raster_buffer_provider_->OrderingBarrier();
|
| + // We must reduce the amount of unused resoruces before calling
|
| + // ScheduleTasks to prevent usage from rising above limits.
|
| + resource_pool_->ReduceResourceUsage();
|
| + image_decode_controller_->ReduceCacheUsage();
|
|
|
| // Schedule running of |raster_queue_|. This replaces any previously
|
| // scheduled tasks and effectively cancels all tasks not present
|
| @@ -980,7 +974,7 @@
|
|
|
| bool supports_concurrent_execution = !use_gpu_rasterization_;
|
| std::unique_ptr<RasterBuffer> raster_buffer =
|
| - raster_buffer_provider_->AcquireBufferForRaster(
|
| + tile_task_manager_->GetRasterBufferProvider()->AcquireBufferForRaster(
|
| resource, resource_content_id, tile->invalidated_id());
|
| return make_scoped_refptr(new RasterTaskImpl(
|
| this, tile, resource, prioritized_tile.raster_source(), playback_settings,
|
| @@ -995,7 +989,8 @@
|
| bool was_canceled) {
|
| DCHECK(tile);
|
| DCHECK(tiles_.find(tile->id()) != tiles_.end());
|
| - raster_buffer_provider_->ReleaseBufferForRaster(std::move(raster_buffer));
|
| + tile_task_manager_->GetRasterBufferProvider()->ReleaseBufferForRaster(
|
| + std::move(raster_buffer));
|
|
|
| TileDrawInfo& draw_info = tile->draw_info();
|
| DCHECK(tile->raster_task_.get());
|
| @@ -1049,11 +1044,6 @@
|
| void TileManager::SetTileTaskManagerForTesting(
|
| TileTaskManager* tile_task_manager) {
|
| tile_task_manager_ = tile_task_manager;
|
| -}
|
| -
|
| -void TileManager::SetRasterBufferProviderForTesting(
|
| - RasterBufferProvider* raster_buffer_provider) {
|
| - raster_buffer_provider_ = raster_buffer_provider;
|
| }
|
|
|
| bool TileManager::AreRequiredTilesReadyToDraw(
|
| @@ -1225,12 +1215,13 @@
|
| }
|
|
|
| ResourceFormat TileManager::DetermineResourceFormat(const Tile* tile) const {
|
| - return raster_buffer_provider_->GetResourceFormat(!tile->is_opaque());
|
| + return tile_task_manager_->GetRasterBufferProvider()->GetResourceFormat(
|
| + !tile->is_opaque());
|
| }
|
|
|
| bool TileManager::DetermineResourceRequiresSwizzle(const Tile* tile) const {
|
| - return raster_buffer_provider_->GetResourceRequiresSwizzle(
|
| - !tile->is_opaque());
|
| + return tile_task_manager_->GetRasterBufferProvider()
|
| + ->GetResourceRequiresSwizzle(!tile->is_opaque());
|
| }
|
|
|
| std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
|
|
|