Chromium Code Reviews| Index: cc/layers/picture_layer_impl.cc |
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc |
| index 4f6bfdb2981a21197bad72053e068f6b34ae6fd8..b6d37094a634689cfe6588a3145ef8405e0b0c06 100644 |
| --- a/cc/layers/picture_layer_impl.cc |
| +++ b/cc/layers/picture_layer_impl.cc |
| @@ -1369,4 +1369,23 @@ bool PictureLayerImpl::HasValidTilePriorities() const { |
| is_drawn_render_surface_layer_list_member(); |
| } |
| +void PictureLayerImpl::InvalidateRegionForImages( |
| + const std::unordered_set<ImageId>& images_to_invalidate) { |
| + InvalidationRegion image_invalidation; |
| + for (auto image_id : images_to_invalidate) { |
| + image_invalidation.Union(raster_source_->GetRectForImage(image_id)); |
| + } |
| + |
| + if (image_invalidation.IsEmpty()) |
|
vmpstr
2017/02/10 19:25:42
Should we just check if (images_to_invalidate.empt
Khushal
2017/02/10 22:09:19
Good point. That check should be in LayerTreeImpl
|
| + return; |
| + |
| + Region invalidation; |
| + image_invalidation.Swap(&invalidation); |
| + TRACE_EVENT1("cc", "PictureLayerImpl::InvalidatingForImages", "invalidation", |
| + invalidation.ToString()); |
| + invalidation_.Union(invalidation); |
| + tilings_->UpdateTilingsForImplSideInvalidation(invalidation); |
| + SetNeedsPushProperties(); |
| +} |
| + |
| } // namespace cc |