| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "cc/layers/picture_layer_impl.h" | 5 #include "cc/layers/picture_layer_impl.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 669 tilings_ = nullptr; | 669 tilings_ = nullptr; |
| 670 ResetRasterScale(); | 670 ResetRasterScale(); |
| 671 } | 671 } |
| 672 | 672 |
| 673 void PictureLayerImpl::RecreateResources() { | 673 void PictureLayerImpl::RecreateResources() { |
| 674 tilings_ = CreatePictureLayerTilingSet(); | 674 tilings_ = CreatePictureLayerTilingSet(); |
| 675 if (raster_source_) { | 675 if (raster_source_) { |
| 676 raster_source_->set_image_decode_controller( | 676 raster_source_->set_image_decode_controller( |
| 677 layer_tree_impl()->image_decode_controller()); | 677 layer_tree_impl()->image_decode_controller()); |
| 678 } | 678 } |
| 679 | |
| 680 // To avoid an edge case after lost context where the tree is up to date but | |
| 681 // the tilings have not been managed, request an update draw properties | |
| 682 // to force tilings to get managed. | |
| 683 layer_tree_impl()->set_needs_update_draw_properties(); | |
| 684 } | 679 } |
| 685 | 680 |
| 686 Region PictureLayerImpl::GetInvalidationRegionForDebugging() { | 681 Region PictureLayerImpl::GetInvalidationRegionForDebugging() { |
| 687 // |invalidation_| gives the invalidation contained in the source frame, but | 682 // |invalidation_| gives the invalidation contained in the source frame, but |
| 688 // is not cleared after drawing from the layer. However, update_rect() is | 683 // is not cleared after drawing from the layer. However, update_rect() is |
| 689 // cleared once the invalidation is drawn, which is useful for debugging | 684 // cleared once the invalidation is drawn, which is useful for debugging |
| 690 // visualizations. This method intersects the two to give a more exact | 685 // visualizations. This method intersects the two to give a more exact |
| 691 // representation of what was invalidated that is cleared after drawing. | 686 // representation of what was invalidated that is cleared after drawing. |
| 692 return IntersectRegions(invalidation_, update_rect()); | 687 return IntersectRegions(invalidation_, update_rect()); |
| 693 } | 688 } |
| (...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1337 bool PictureLayerImpl::IsOnActiveOrPendingTree() const { | 1332 bool PictureLayerImpl::IsOnActiveOrPendingTree() const { |
| 1338 return !layer_tree_impl()->IsRecycleTree(); | 1333 return !layer_tree_impl()->IsRecycleTree(); |
| 1339 } | 1334 } |
| 1340 | 1335 |
| 1341 bool PictureLayerImpl::HasValidTilePriorities() const { | 1336 bool PictureLayerImpl::HasValidTilePriorities() const { |
| 1342 return IsOnActiveOrPendingTree() && | 1337 return IsOnActiveOrPendingTree() && |
| 1343 is_drawn_render_surface_layer_list_member(); | 1338 is_drawn_render_surface_layer_list_member(); |
| 1344 } | 1339 } |
| 1345 | 1340 |
| 1346 } // namespace cc | 1341 } // namespace cc |
| OLD | NEW |