OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/trees/draw_property_utils.h" | 5 #include "cc/trees/draw_property_utils.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 // case where we may animate to a non-singular transform and wish to | 305 // case where we may animate to a non-singular transform and wish to |
306 // pre-raster. | 306 // pre-raster. |
307 if (!HasInvertibleOrAnimatedTransform(layer)) | 307 if (!HasInvertibleOrAnimatedTransform(layer)) |
308 return true; | 308 return true; |
309 | 309 |
310 // When we need to do a readback/copy of a layer's output, we can not skip | 310 // When we need to do a readback/copy of a layer's output, we can not skip |
311 // it or any of its ancestors. | 311 // it or any of its ancestors. |
312 if (layer->num_copy_requests_in_target_subtree() > 0) | 312 if (layer->num_copy_requests_in_target_subtree() > 0) |
313 return false; | 313 return false; |
314 | 314 |
315 // We cannot skip the the subtree if a descendant has a wheel or touch handler | 315 // We cannot skip the the subtree if a descendant has a touch handler |
316 // or the hit testing code will break (it requires fresh transforms, etc). | 316 // or the hit testing code will break (it requires fresh transforms, etc). |
317 // Though we don't need visible rect for hit testing, we need render surface's | 317 // Though we don't need visible rect for hit testing, we need render surface's |
318 // drawable content rect which depends on layer's drawable content rect which | 318 // drawable content rect which depends on layer's drawable content rect which |
319 // in turn depends on layer's clip rect that is computed while computing | 319 // in turn depends on layer's clip rect that is computed while computing |
320 // visible rects. | 320 // visible rects. |
321 if (layer->layer_or_descendant_has_input_handler()) | 321 if (layer->layer_or_descendant_has_input_handler()) |
322 return false; | 322 return false; |
323 | 323 |
324 // If the layer is not drawn, then skip it and its subtree. | 324 // If the layer is not drawn, then skip it and its subtree. |
325 if (!layer_is_drawn) | 325 if (!layer_is_drawn) |
(...skipping 850 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1176 | 1176 |
1177 void UpdateElasticOverscrollInPropertyTrees( | 1177 void UpdateElasticOverscrollInPropertyTrees( |
1178 PropertyTrees* property_trees, | 1178 PropertyTrees* property_trees, |
1179 const Layer* overscroll_elasticity_layer, | 1179 const Layer* overscroll_elasticity_layer, |
1180 const gfx::Vector2dF& elastic_overscroll) { | 1180 const gfx::Vector2dF& elastic_overscroll) { |
1181 UpdateElasticOverscrollInPropertyTreesInternal( | 1181 UpdateElasticOverscrollInPropertyTreesInternal( |
1182 property_trees, overscroll_elasticity_layer, elastic_overscroll); | 1182 property_trees, overscroll_elasticity_layer, elastic_overscroll); |
1183 } | 1183 } |
1184 | 1184 |
1185 } // namespace cc | 1185 } // namespace cc |
OLD | NEW |