Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Side by Side Diff: cc/trees/draw_property_utils.cc

Issue 2022203003: cc: Remove dead code in ComputeVisibleRects (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 IsLayerBackFaceVisible(layer, backface_transform_id, tree)) 306 IsLayerBackFaceVisible(layer, backface_transform_id, tree))
307 return false; 307 return false;
308 } 308 }
309 309
310 return true; 310 return true;
311 } 311 }
312 312
313 void FindLayersThatNeedUpdates(LayerTreeImpl* layer_tree_impl, 313 void FindLayersThatNeedUpdates(LayerTreeImpl* layer_tree_impl,
314 const TransformTree& transform_tree, 314 const TransformTree& transform_tree,
315 const EffectTree& effect_tree, 315 const EffectTree& effect_tree,
316 LayerImplList* update_layer_list,
317 std::vector<LayerImpl*>* visible_layer_list) { 316 std::vector<LayerImpl*>* visible_layer_list) {
318 for (auto* layer_impl : *layer_tree_impl) { 317 for (auto* layer_impl : *layer_tree_impl) {
319 bool layer_is_drawn = 318 bool layer_is_drawn =
320 effect_tree.Node(layer_impl->effect_tree_index())->data.is_drawn; 319 effect_tree.Node(layer_impl->effect_tree_index())->data.is_drawn;
321 320
322 if (!IsRootLayer(layer_impl) && 321 if (!IsRootLayer(layer_impl) &&
323 LayerShouldBeSkipped(layer_impl, layer_is_drawn, transform_tree, 322 LayerShouldBeSkipped(layer_impl, layer_is_drawn, transform_tree,
324 effect_tree)) 323 effect_tree))
325 continue; 324 continue;
326 325
327 if (LayerNeedsUpdate(layer_impl, layer_is_drawn, transform_tree)) { 326 if (LayerNeedsUpdate(layer_impl, layer_is_drawn, transform_tree))
328 visible_layer_list->push_back(layer_impl); 327 visible_layer_list->push_back(layer_impl);
329 update_layer_list->push_back(layer_impl);
330 }
331
332 if (LayerImpl* mask_layer = layer_impl->mask_layer())
333 update_layer_list->push_back(mask_layer);
334 if (LayerImpl* replica_layer = layer_impl->replica_layer()) {
335 if (LayerImpl* mask_layer = replica_layer->mask_layer())
336 update_layer_list->push_back(mask_layer);
337 }
338 } 328 }
339 } 329 }
340 330
341 void UpdateRenderSurfaceForLayer(EffectTree* effect_tree, 331 void UpdateRenderSurfaceForLayer(EffectTree* effect_tree,
342 bool non_root_surfaces_enabled, 332 bool non_root_surfaces_enabled,
343 LayerImpl* layer) { 333 LayerImpl* layer) {
344 if (!non_root_surfaces_enabled) { 334 if (!non_root_surfaces_enabled) {
345 layer->SetHasRenderSurface(IsRootLayer(layer)); 335 layer->SetHasRenderSurface(IsRootLayer(layer));
346 return; 336 return;
347 } 337 }
(...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after
753 << gfx::ToEnclosingRect(clip_tree->Node(layer->clip_tree_index()) 743 << gfx::ToEnclosingRect(clip_tree->Node(layer->clip_tree_index())
754 ->data.clip_in_target_space) 744 ->data.clip_in_target_space)
755 .ToString(); 745 .ToString();
756 } 746 }
757 } 747 }
758 748
759 static void ComputeVisibleRectsInternal( 749 static void ComputeVisibleRectsInternal(
760 LayerImpl* root_layer, 750 LayerImpl* root_layer,
761 PropertyTrees* property_trees, 751 PropertyTrees* property_trees,
762 bool can_render_to_separate_surface, 752 bool can_render_to_separate_surface,
763 LayerImplList* update_layer_list,
764 std::vector<LayerImpl*>* visible_layer_list) { 753 std::vector<LayerImpl*>* visible_layer_list) {
765 if (property_trees->non_root_surfaces_enabled != 754 if (property_trees->non_root_surfaces_enabled !=
766 can_render_to_separate_surface) { 755 can_render_to_separate_surface) {
767 property_trees->non_root_surfaces_enabled = can_render_to_separate_surface; 756 property_trees->non_root_surfaces_enabled = can_render_to_separate_surface;
768 property_trees->transform_tree.set_needs_update(true); 757 property_trees->transform_tree.set_needs_update(true);
769 } 758 }
770 if (property_trees->transform_tree.needs_update()) { 759 if (property_trees->transform_tree.needs_update()) {
771 property_trees->clip_tree.set_needs_update(true); 760 property_trees->clip_tree.set_needs_update(true);
772 property_trees->effect_tree.set_needs_update(true); 761 property_trees->effect_tree.set_needs_update(true);
773 } 762 }
774 UpdateRenderTarget(&property_trees->effect_tree, 763 UpdateRenderTarget(&property_trees->effect_tree,
775 property_trees->non_root_surfaces_enabled); 764 property_trees->non_root_surfaces_enabled);
776 ComputeTransforms(&property_trees->transform_tree); 765 ComputeTransforms(&property_trees->transform_tree);
777 ComputeClips(&property_trees->clip_tree, property_trees->transform_tree, 766 ComputeClips(&property_trees->clip_tree, property_trees->transform_tree,
778 can_render_to_separate_surface); 767 can_render_to_separate_surface);
779 ComputeEffects(&property_trees->effect_tree); 768 ComputeEffects(&property_trees->effect_tree);
780 769
781 FindLayersThatNeedUpdates( 770 FindLayersThatNeedUpdates(root_layer->layer_tree_impl(),
782 root_layer->layer_tree_impl(), property_trees->transform_tree, 771 property_trees->transform_tree,
783 property_trees->effect_tree, update_layer_list, visible_layer_list); 772 property_trees->effect_tree, visible_layer_list);
784 CalculateVisibleRects<LayerImpl>( 773 CalculateVisibleRects<LayerImpl>(
785 *visible_layer_list, property_trees->clip_tree, 774 *visible_layer_list, property_trees->clip_tree,
786 property_trees->transform_tree, property_trees->effect_tree, 775 property_trees->transform_tree, property_trees->effect_tree,
787 can_render_to_separate_surface); 776 can_render_to_separate_surface);
788 } 777 }
789 778
790 void UpdatePropertyTrees(PropertyTrees* property_trees, 779 void UpdatePropertyTrees(PropertyTrees* property_trees,
791 bool can_render_to_separate_surface) { 780 bool can_render_to_separate_surface) {
792 if (property_trees->non_root_surfaces_enabled != 781 if (property_trees->non_root_surfaces_enabled !=
793 can_render_to_separate_surface) { 782 can_render_to_separate_surface) {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
854 can_render_to_separate_surface, layer); 843 can_render_to_separate_surface, layer);
855 EffectNode* node = 844 EffectNode* node =
856 property_trees->effect_tree.Node(layer->effect_tree_index()); 845 property_trees->effect_tree.Node(layer->effect_tree_index());
857 if (node->owner_id == layer->id()) 846 if (node->owner_id == layer->id())
858 node->data.render_surface = layer->render_surface(); 847 node->data.render_surface = layer->render_surface();
859 #if DCHECK_IS_ON() 848 #if DCHECK_IS_ON()
860 if (can_render_to_separate_surface) 849 if (can_render_to_separate_surface)
861 ValidateRenderSurfaceForLayer(layer); 850 ValidateRenderSurfaceForLayer(layer);
862 #endif 851 #endif
863 } 852 }
864 LayerImplList update_layer_list;
865 ComputeVisibleRectsInternal(root_layer, property_trees, 853 ComputeVisibleRectsInternal(root_layer, property_trees,
866 can_render_to_separate_surface, 854 can_render_to_separate_surface,
867 &update_layer_list, visible_layer_list); 855 visible_layer_list);
868 } 856 }
869 857
870 bool LayerNeedsUpdate(Layer* layer, 858 bool LayerNeedsUpdate(Layer* layer,
871 bool layer_is_drawn, 859 bool layer_is_drawn,
872 const TransformTree& tree) { 860 const TransformTree& tree) {
873 return LayerNeedsUpdateInternal(layer, layer_is_drawn, tree); 861 return LayerNeedsUpdateInternal(layer, layer_is_drawn, tree);
874 } 862 }
875 863
876 bool LayerNeedsUpdate(LayerImpl* layer, 864 bool LayerNeedsUpdate(LayerImpl* layer,
877 bool layer_is_drawn, 865 bool layer_is_drawn,
(...skipping 380 matching lines...) Expand 10 before | Expand all | Expand 10 after
1258 void UpdateElasticOverscroll(PropertyTrees* property_trees, 1246 void UpdateElasticOverscroll(PropertyTrees* property_trees,
1259 const Layer* overscroll_elasticity_layer, 1247 const Layer* overscroll_elasticity_layer,
1260 const gfx::Vector2dF& elastic_overscroll) { 1248 const gfx::Vector2dF& elastic_overscroll) {
1261 UpdateElasticOverscrollInternal(property_trees, overscroll_elasticity_layer, 1249 UpdateElasticOverscrollInternal(property_trees, overscroll_elasticity_layer,
1262 elastic_overscroll); 1250 elastic_overscroll);
1263 } 1251 }
1264 1252
1265 } // namespace draw_property_utils 1253 } // namespace draw_property_utils
1266 1254
1267 } // namespace cc 1255 } // namespace cc
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698