Chromium Code Reviews| Index: cc/tiles/image_manager.cc |
| diff --git a/cc/tiles/image_manager.cc b/cc/tiles/image_manager.cc |
| index cb11e9ec19266ae01c1577b07fb3b2dfe7e13996..c9c40f060673aac8e660793debcff1f5685147e2 100644 |
| --- a/cc/tiles/image_manager.cc |
| +++ b/cc/tiles/image_manager.cc |
| @@ -10,6 +10,10 @@ ImageManager::ImageManager() = default; |
| ImageManager::~ImageManager() = default; |
| void ImageManager::SetImageDecodeController(ImageDecodeController* controller) { |
| + if (!controller_) { |
| + SetPredecodeImages(std::vector<DrawImage>(), |
|
enne (OOO)
2016/09/16 17:45:44
Why do you need to do this? Why would there be loc
vmpstr
2016/09/16 18:11:49
Errr, yeah I meant controller here. I've added a t
|
| + ImageDecodeController::TracingInfo()); |
| + } |
| controller_ = controller; |
| } |
| @@ -43,4 +47,14 @@ void ImageManager::ReduceMemoryUsage() { |
| controller_->ReduceCacheUsage(); |
| } |
| +std::vector<scoped_refptr<TileTask>> ImageManager::SetPredecodeImages( |
| + std::vector<DrawImage> images, |
| + const ImageDecodeController::TracingInfo& tracing_info) { |
| + std::vector<scoped_refptr<TileTask>> new_tasks; |
| + GetTasksForImagesAndRef(&images, &new_tasks, tracing_info); |
| + UnrefImages(predecode_locked_images_); |
| + predecode_locked_images_ = std::move(images); |
| + return new_tasks; |
| +} |
| + |
| } // namespace cc |