Chromium Code Reviews| Index: cc/resources/tile_manager.h |
| diff --git a/cc/resources/tile_manager.h b/cc/resources/tile_manager.h |
| index 6f579f9fb1c9dde8baa82cd233604482f0e00f5f..cdaf9df6e9dddec8dc25c1b91979f6a3031c87c0 100644 |
| --- a/cc/resources/tile_manager.h |
| +++ b/cc/resources/tile_manager.h |
| @@ -47,6 +47,9 @@ class CC_EXPORT TileManagerClient { |
| // Called when all tiles marked as required for activation are ready to draw. |
| virtual void NotifyReadyToActivate() = 0; |
| + // Called when all tiles required to draw are ready. |
|
reveman
2014/10/28 15:52:24
nit: "marked as required..." to be consistent with
ernstm
2014/10/28 22:13:09
Done.
|
| + virtual void NotifyReadyToDraw() = 0; |
| + |
| // Called when the visible representation of a tile might have changed. Some |
| // examples are: |
| // - Tile version initialized. |
| @@ -87,8 +90,9 @@ class CC_EXPORT TileManager : public RasterizerClient, |
| public RefCountedManager<Tile> { |
| public: |
| enum NamedTaskSet { |
| - REQUIRED_FOR_ACTIVATION = 0, |
| - ALL = 1, |
| + ALL, |
| + REQUIRED_FOR_ACTIVATION, |
| + REQUIRED_FOR_DRAW |
| // Adding additional values requires increasing kNumberOfTaskSets in |
| // rasterizer.h |
| }; |
| @@ -231,7 +235,9 @@ class CC_EXPORT TileManager : public RasterizerClient, |
| MemoryUsage* usage); |
| bool TilePriorityViolatesMemoryPolicy(const TilePriority& priority); |
| bool IsReadyToActivate() const; |
| + bool IsReadyToDraw() const; |
| void CheckIfReadyToActivate(); |
| + void CheckIfReadyToDraw(); |
| TileManagerClient* client_; |
| scoped_refptr<base::SequencedTaskRunner> task_runner_; |
| @@ -272,6 +278,7 @@ class CC_EXPORT TileManager : public RasterizerClient, |
| std::vector<scoped_refptr<RasterTask>> orphan_raster_tasks_; |
| UniqueNotifier ready_to_activate_check_notifier_; |
| + UniqueNotifier ready_to_draw_check_notifier_; |
| RasterTilePriorityQueue raster_priority_queue_; |
| EvictionTilePriorityQueue eviction_priority_queue_; |