Index: cc/tile_manager.h |
diff --git a/cc/tile_manager.h b/cc/tile_manager.h |
index 6137aabec53371ce798052ea87e40dcf5ee32a3f..5c2cf6d1a805c999e213286e42359d21cc113ede 100644 |
--- a/cc/tile_manager.h |
+++ b/cc/tile_manager.h |
@@ -117,13 +117,22 @@ class CC_EXPORT TileManager { |
void RegisterTile(Tile* tile); |
void UnregisterTile(Tile* tile); |
void WillModifyTilePriority( |
- Tile* tile, WhichTree tree, const TilePriority& new_priority); |
+ Tile* tile, WhichTree tree, const TilePriority& new_priority) { |
+ // TODO(nduca): Do something smarter if reprioritization turns out to be |
+ // costly. |
+ ScheduleManageTiles(); |
+ } |
private: |
void SortTiles(); |
void AssignGpuMemoryToTiles(); |
void FreeResourcesForTile(Tile* tile); |
- void ScheduleManageTiles(); |
+ void ScheduleManageTiles() { |
+ if (manage_tiles_pending_) |
+ return; |
+ client_->ScheduleManageTiles(); |
+ manage_tiles_pending_ = true; |
+ } |
void DispatchMoreTasks(); |
void GatherPixelRefsForTile(Tile* tile); |
void DispatchImageDecodeTasksForTile(Tile* tile); |