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

Unified Diff: cc/layers/picture_layer.cc

Issue 640063010: cc: Don't swap PictureLayerTilingSet on activate. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: noswap: rebase Created 6 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 | « cc/layers/picture_layer.h ('k') | cc/layers/picture_layer_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layers/picture_layer.cc
diff --git a/cc/layers/picture_layer.cc b/cc/layers/picture_layer.cc
index 55241d0a16f4c43125e3cdb09c95a104f23b6f2f..8a4fd6713c90fb114fab36c20d3abc323230a787 100644
--- a/cc/layers/picture_layer.cc
+++ b/cc/layers/picture_layer.cc
@@ -37,12 +37,14 @@ PictureLayer::~PictureLayer() {
}
scoped_ptr<LayerImpl> PictureLayer::CreateLayerImpl(LayerTreeImpl* tree_impl) {
- return PictureLayerImpl::Create(tree_impl, id());
+ return PictureLayerImpl::Create(tree_impl, id(), is_mask_);
}
void PictureLayer::PushPropertiesTo(LayerImpl* base_layer) {
Layer::PushPropertiesTo(base_layer);
PictureLayerImpl* layer_impl = static_cast<PictureLayerImpl*>(base_layer);
+ // TODO(danakj): Make is_mask_ a constructor parameter for PictureLayer.
+ DCHECK_EQ(layer_impl->is_mask_, is_mask_);
int source_frame_number = layer_tree_host()->source_frame_number();
gfx::Size impl_bounds = layer_impl->bounds();
@@ -63,17 +65,14 @@ void PictureLayer::PushPropertiesTo(LayerImpl* base_layer) {
recording_source_->SetEmptyBounds();
}
- // Unlike other properties, invalidation must always be set on layer_impl.
- // See PictureLayerImpl::PushPropertiesTo for more details.
- layer_impl->invalidation_.Clear();
- layer_impl->invalidation_.Swap(&recording_invalidation_);
- layer_impl->set_is_mask(is_mask_);
scoped_refptr<RasterSource> raster_source =
recording_source_->CreateRasterSource();
raster_source->SetBackgoundColor(SafeOpaqueBackgroundColor());
raster_source->SetRequiresClear(!contents_opaque() &&
!client_->FillsBoundsCompletely());
- layer_impl->UpdateRasterSource(raster_source);
+ layer_impl->UpdateRasterSource(raster_source, &recording_invalidation_,
+ nullptr);
+ DCHECK(recording_invalidation_.IsEmpty());
}
void PictureLayer::SetLayerTreeHost(LayerTreeHost* host) {
« no previous file with comments | « cc/layers/picture_layer.h ('k') | cc/layers/picture_layer_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698