Chromium Code Reviews| 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_; |