| Index: cc/tiles/software_image_decode_controller.cc
|
| diff --git a/cc/tiles/software_image_decode_controller.cc b/cc/tiles/software_image_decode_controller.cc
|
| index d1e7f8083c497b3cd526ee36975cda02d00501d3..4d44e624159d4bc773db5bfd7240fcb5d9952bd6 100644
|
| --- a/cc/tiles/software_image_decode_controller.cc
|
| +++ b/cc/tiles/software_image_decode_controller.cc
|
| @@ -36,7 +36,7 @@ class AutoRemoveKeyFromTaskMap {
|
| public:
|
| AutoRemoveKeyFromTaskMap(
|
| std::unordered_map<SoftwareImageDecodeController::ImageKey,
|
| - scoped_refptr<ImageDecodeTask>,
|
| + scoped_refptr<DependencyTask>,
|
| SoftwareImageDecodeController::ImageKeyHash>* task_map,
|
| const SoftwareImageDecodeController::ImageKey& key)
|
| : task_map_(task_map), key_(key) {}
|
| @@ -44,12 +44,12 @@ class AutoRemoveKeyFromTaskMap {
|
|
|
| private:
|
| std::unordered_map<SoftwareImageDecodeController::ImageKey,
|
| - scoped_refptr<ImageDecodeTask>,
|
| + scoped_refptr<DependencyTask>,
|
| SoftwareImageDecodeController::ImageKeyHash>* task_map_;
|
| SoftwareImageDecodeController::ImageKey key_;
|
| };
|
|
|
| -class ImageDecodeTaskImpl : public ImageDecodeTask {
|
| +class ImageDecodeTaskImpl : public DependencyTask {
|
| public:
|
| ImageDecodeTaskImpl(SoftwareImageDecodeController* controller,
|
| const SoftwareImageDecodeController::ImageKey& image_key,
|
| @@ -61,7 +61,7 @@ class ImageDecodeTaskImpl : public ImageDecodeTask {
|
| image_ref_(skia::SharePtr(image.image())),
|
| source_prepare_tiles_id_(source_prepare_tiles_id) {}
|
|
|
| - // Overridden from Task:
|
| + // Overridden from DependencyTask:
|
| void RunOnWorkerThread() override {
|
| TRACE_EVENT2("cc", "ImageDecodeTaskImpl::RunOnWorkerThread", "mode",
|
| "software", "source_prepare_tiles_id",
|
| @@ -70,10 +70,8 @@ class ImageDecodeTaskImpl : public ImageDecodeTask {
|
| image_ref_.get());
|
| controller_->DecodeImage(image_key_, image_);
|
| }
|
| -
|
| - // Overridden from TileTask:
|
| - void ScheduleOnOriginThread(TileTaskClient* client) override {}
|
| - void CompleteOnOriginThread(TileTaskClient* client) override {
|
| + void ScheduleOnOriginThread(DependencyTaskClient* client) override {}
|
| + void CompleteOnOriginThread(DependencyTaskClient* client) override {
|
| controller_->RemovePendingTask(image_key_);
|
| }
|
|
|
| @@ -157,7 +155,7 @@ SoftwareImageDecodeController::~SoftwareImageDecodeController() {
|
| bool SoftwareImageDecodeController::GetTaskForImageAndRef(
|
| const DrawImage& image,
|
| uint64_t prepare_tiles_id,
|
| - scoped_refptr<ImageDecodeTask>* task) {
|
| + scoped_refptr<DependencyTask>* task) {
|
| // If the image already exists or if we're going to create a task for it, then
|
| // we'll likely need to ref this image (the exception is if we're prerolling
|
| // the image only). That means the image is or will be in the cache. When the
|
| @@ -184,7 +182,7 @@ bool SoftwareImageDecodeController::GetTaskForImageAndRef(
|
| if (!CanHandleImage(key)) {
|
| base::AutoLock lock(lock_);
|
| if (prerolled_images_.count(key.image_id()) == 0) {
|
| - scoped_refptr<ImageDecodeTask>& existing_task = pending_image_tasks_[key];
|
| + scoped_refptr<DependencyTask>& existing_task = pending_image_tasks_[key];
|
| if (!existing_task) {
|
| existing_task = make_scoped_refptr(
|
| new ImageDecodeTaskImpl(this, key, image, prepare_tiles_id));
|
| @@ -217,7 +215,7 @@ bool SoftwareImageDecodeController::GetTaskForImageAndRef(
|
| }
|
|
|
| // If the task exists, return it.
|
| - scoped_refptr<ImageDecodeTask>& existing_task = pending_image_tasks_[key];
|
| + scoped_refptr<DependencyTask>& existing_task = pending_image_tasks_[key];
|
| if (existing_task) {
|
| RefImage(key);
|
| *task = existing_task;
|
|
|