Index: cc/resources/image_raster_worker_pool.cc |
diff --git a/cc/resources/image_raster_worker_pool.cc b/cc/resources/image_raster_worker_pool.cc |
index c2fe39506fa34cfaebe81a4448a8e67a54136fdd..9f9a10e83c9b47f0e3ea679d0bea890c23febeb7 100644 |
--- a/cc/resources/image_raster_worker_pool.cc |
+++ b/cc/resources/image_raster_worker_pool.cc |
@@ -79,7 +79,9 @@ void ImageRasterWorkerPool::ScheduleTasks(RasterTask::Queue* queue) { |
TaskMap::iterator image_it = image_tasks_.find(task); |
if (image_it != image_tasks_.end()) { |
internal::WorkerPoolTask* image_task = image_it->second.get(); |
- graph.InsertRasterTask(image_task, task->dependencies()); |
+ graph.InsertRasterTask(image_task, |
+ task->dependencies(), |
+ IsRasterTaskRequiredForActivation(task)); |
continue; |
} |
@@ -99,12 +101,22 @@ void ImageRasterWorkerPool::ScheduleTasks(RasterTask::Queue* queue) { |
base::Unretained(this), |
make_scoped_refptr(task)))); |
image_tasks_[task] = new_image_task; |
- graph.InsertRasterTask(new_image_task.get(), task->dependencies()); |
+ graph.InsertRasterTask(new_image_task.get(), |
+ task->dependencies(), |
+ IsRasterTaskRequiredForActivation(task)); |
} |
SetRasterTaskGraph(&graph); |
} |
+void ImageRasterWorkerPool::OnRasterTasksFinished() { |
+ client()->DidFinishedRunningTasks(); |
+} |
+ |
+void ImageRasterWorkerPool::OnRasterTasksRequiredForActivationFinished() { |
+ client()->DidFinishedRunningTasksRequiredForActivation(); |
+} |
+ |
void ImageRasterWorkerPool::OnRasterTaskCompleted( |
scoped_refptr<internal::RasterWorkerPoolTask> task, |
bool was_canceled) { |