Index: cc/resources/tile_manager.h |
diff --git a/cc/resources/tile_manager.h b/cc/resources/tile_manager.h |
index 01acf6eb41c5bf3a472fe364a07acafb8fb2fe0f..3c7b58c7bea0b51fa6c56d25ef0f39075d04083d 100644 |
--- a/cc/resources/tile_manager.h |
+++ b/cc/resources/tile_manager.h |
@@ -88,7 +88,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(); |
boliu
2013/07/01 20:40:23
The android_webivew tests run in software mode wit
|
} |
protected: |
@@ -108,10 +109,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, |
@@ -153,6 +162,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_; |