| Index: cc/resources/tile_manager.h
|
| diff --git a/cc/resources/tile_manager.h b/cc/resources/tile_manager.h
|
| index ef8ccfb2f21142bbbf18a1ba91db822195f2ce27..5d842707b547037770934da5827e96eb09ec5a2e 100644
|
| --- a/cc/resources/tile_manager.h
|
| +++ b/cc/resources/tile_manager.h
|
| @@ -90,7 +90,8 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| }
|
|
|
| bool AreTilesRequiredForActivationReady() const {
|
| - return tiles_that_need_to_be_initialized_for_activation_.empty();
|
| + return tiles_that_need_to_be_initialized_for_activation_.empty() &&
|
| + oom_tiles_that_need_to_be_initialized_for_activation_.empty();
|
| }
|
|
|
| protected:
|
| @@ -110,10 +111,18 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| // Overriden from RasterWorkerPoolClient:
|
| virtual bool ShouldForceTasksRequiredForActivationToComplete() const
|
| OVERRIDE;
|
| + virtual void DidFinishedRunningTasks() OVERRIDE;
|
| + virtual void DidFinishedRunningTasksRequiredForActivation() OVERRIDE;
|
|
|
| // Virtual for test
|
| virtual void ScheduleTasks();
|
|
|
| + const std::vector<Tile*>& tiles_that_need_to_be_rasterized() const {
|
| + return tiles_that_need_to_be_rasterized_;
|
| + }
|
| +
|
| + void ReassignGpuMemoryToOOMTilesRequiredForActivation();
|
| +
|
| private:
|
| void OnImageDecodeTaskCompleted(
|
| int layer_id,
|
| @@ -155,6 +164,7 @@ class CC_EXPORT TileManager : public RasterWorkerPoolClient {
|
| TileVector tiles_that_need_to_be_rasterized_;
|
| typedef std::set<Tile*> TileSet;
|
| TileSet tiles_that_need_to_be_initialized_for_activation_;
|
| + TileSet oom_tiles_that_need_to_be_initialized_for_activation_;
|
|
|
| bool ever_exceeded_memory_budget_;
|
| MemoryHistory::Entry memory_stats_from_last_assign_;
|
|
|