| Index: cc/layers/picture_layer_impl.cc
|
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
|
| index 24a83cb20d429bcac34b931df3ad32368278a5cd..f2fd744bf655edbca65a2aa2cc3f4e8c41829a8e 100644
|
| --- a/cc/layers/picture_layer_impl.cc
|
| +++ b/cc/layers/picture_layer_impl.cc
|
| @@ -524,6 +524,13 @@ void PictureLayerImpl::SyncTiling(
|
| if (!DrawsContent() || tiling->contents_scale() < MinimumContentsScale())
|
| return;
|
| tilings_->Clone(tiling);
|
| +
|
| + // If this tree needs update draw properties, then the tiling will
|
| + // get updated prior to drawing or activation. If this tree does not
|
| + // need update draw properties, then its transforms are up to date and
|
| + // we can create tiles for this tiling immediately.
|
| + if (!layer_tree_impl()->needs_update_draw_properties())
|
| + UpdateTilePriorities();
|
| }
|
|
|
| void PictureLayerImpl::SetIsMask(bool is_mask) {
|
| @@ -557,6 +564,7 @@ ResourceProvider::ResourceId PictureLayerImpl::ContentsResourceId() const {
|
|
|
| bool PictureLayerImpl::AreVisibleResourcesReady() const {
|
| DCHECK(layer_tree_impl()->IsPendingTree());
|
| + DCHECK(!layer_tree_impl()->needs_update_draw_properties());
|
| DCHECK(ideal_contents_scale_);
|
|
|
| if (!tilings_->num_tilings())
|
| @@ -588,6 +596,7 @@ bool PictureLayerImpl::AreVisibleResourcesReady() const {
|
| Region missing_region = rect;
|
| for (size_t i = 0; i < tilings_->num_tilings(); ++i) {
|
| PictureLayerTiling* tiling = tilings_->tiling_at(i);
|
| + DCHECK(tiling->has_ever_been_updated());
|
|
|
| if (tiling->contents_scale() < min_acceptable_scale)
|
| continue;
|
|
|