Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(676)

Unified Diff: cc/tiles/picture_layer_tiling.cc

Issue 2564433003: Add PictureLayerTiling pointer to Tile (Closed)
Patch Set: rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | cc/tiles/picture_layer_tiling_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/tiles/picture_layer_tiling.cc
diff --git a/cc/tiles/picture_layer_tiling.cc b/cc/tiles/picture_layer_tiling.cc
index 74804dc511230809aba92b35d6b88ac201a98673..d582cb86e8319599c2a480acd04325f8f8afbcae 100644
--- a/cc/tiles/picture_layer_tiling.cc
+++ b/cc/tiles/picture_layer_tiling.cc
@@ -156,17 +156,14 @@ void PictureLayerTiling::TakeTilesAndPropertiesFrom(
SetLiveTilesRect(pending_twin->live_tiles_rect());
}
- if (tiles_.empty()) {
- tiles_.swap(pending_twin->tiles_);
- all_tiles_done_ = pending_twin->all_tiles_done_;
- } else {
- while (!pending_twin->tiles_.empty()) {
- auto pending_iter = pending_twin->tiles_.begin();
- tiles_[pending_iter->first] = std::move(pending_iter->second);
- pending_twin->tiles_.erase(pending_iter);
- }
- all_tiles_done_ &= pending_twin->all_tiles_done_;
+ while (!pending_twin->tiles_.empty()) {
+ auto pending_iter = pending_twin->tiles_.begin();
+ pending_iter->second->set_tiling(this);
+ tiles_[pending_iter->first] = std::move(pending_iter->second);
+ pending_twin->tiles_.erase(pending_iter);
}
+ all_tiles_done_ &= pending_twin->all_tiles_done_;
+
DCHECK(pending_twin->tiles_.empty());
pending_twin->all_tiles_done_ = true;
@@ -323,7 +320,7 @@ Tile::CreateInfo PictureLayerTiling::CreateInfoForTile(int i, int j) const {
tile_rect.set_size(tiling_data_.max_texture_size());
gfx::Rect enclosing_layer_rect = gfx::ScaleToEnclosingRect(
tile_rect, 1.f / raster_scales_.width(), 1.f / raster_scales_.height());
- return Tile::CreateInfo(i, j, enclosing_layer_rect, tile_rect,
+ return Tile::CreateInfo(this, i, j, enclosing_layer_rect, tile_rect,
raster_scales_);
}
« no previous file with comments | « no previous file | cc/tiles/picture_layer_tiling_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698