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_; |