| Index: cc/layers/picture_layer_impl.cc
|
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
|
| index 9da335db69911f446c0befa3a9fa255dde772e55..bf142a51346dc2f2914b046a1c127ddf982a737e 100644
|
| --- a/cc/layers/picture_layer_impl.cc
|
| +++ b/cc/layers/picture_layer_impl.cc
|
| @@ -522,6 +522,13 @@ void PictureLayerImpl::SyncTiling(
|
| if (!DrawsContent() || tiling->contents_scale() < MinimumContentsScale())
|
| return;
|
| tilings_->AddTiling(tiling->contents_scale());
|
| +
|
| + // 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) {
|
| @@ -555,6 +562,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())
|
| @@ -586,6 +594,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;
|
|
|