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

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

Issue 1983543002: cc : Fix bug in LayerToPropertyTreeIndices map (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 | « cc/trees/layer_tree_host_unittest.cc ('k') | 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/property_tree_builder.h" 5 #include "cc/trees/property_tree_builder.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 node.data.applies_local_clip = layer_clips_subtree; 322 node.data.applies_local_clip = layer_clips_subtree;
323 node.data.resets_clip = has_unclipped_surface; 323 node.data.resets_clip = has_unclipped_surface;
324 node.data.target_is_clipped = data_for_children->target_is_clipped; 324 node.data.target_is_clipped = data_for_children->target_is_clipped;
325 node.data.layers_are_clipped = layers_are_clipped; 325 node.data.layers_are_clipped = layers_are_clipped;
326 node.data.layers_are_clipped_when_surfaces_disabled = 326 node.data.layers_are_clipped_when_surfaces_disabled =
327 layers_are_clipped_when_surfaces_disabled; 327 layers_are_clipped_when_surfaces_disabled;
328 328
329 data_for_children->clip_tree_parent = 329 data_for_children->clip_tree_parent =
330 data_for_children->property_trees->clip_tree.Insert(node, parent_id); 330 data_for_children->property_trees->clip_tree.Insert(node, parent_id);
331 data_for_children->property_trees->clip_id_to_index_map[layer->id()] = 331 data_for_children->property_trees->clip_id_to_index_map[layer->id()] =
332 node.id; 332 data_for_children->clip_tree_parent;
333 } 333 }
334 334
335 layer->SetClipTreeIndex(data_for_children->clip_tree_parent); 335 layer->SetClipTreeIndex(data_for_children->clip_tree_parent);
336 // TODO(awoloszyn): Right now when we hit a node with a replica, we reset the 336 // TODO(awoloszyn): Right now when we hit a node with a replica, we reset the
337 // clip for all children since we may need to draw. We need to figure out a 337 // clip for all children since we may need to draw. We need to figure out a
338 // better way, since we will need both the clipped and unclipped versions. 338 // better way, since we will need both the clipped and unclipped versions.
339 } 339 }
340 340
341 template <typename LayerType> 341 template <typename LayerType>
342 static inline bool IsAtBoundaryOf3dRenderingContext(LayerType* layer) { 342 static inline bool IsAtBoundaryOf3dRenderingContext(LayerType* layer) {
(...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after
838 // into. Transform node created from root layer (includes device scale 838 // into. Transform node created from root layer (includes device scale
839 // factor) and clip node created from root layer (include viewports) applies 839 // factor) and clip node created from root layer (include viewports) applies
840 // to root render surface's content, but not root render surface itself. 840 // to root render surface's content, but not root render surface itself.
841 node.data.transform_id = kRootPropertyTreeNodeId; 841 node.data.transform_id = kRootPropertyTreeNodeId;
842 node.data.clip_id = kViewportClipTreeNodeId; 842 node.data.clip_id = kViewportClipTreeNodeId;
843 } 843 }
844 data_for_children->effect_tree_parent = 844 data_for_children->effect_tree_parent =
845 data_for_children->property_trees->effect_tree.Insert(node, parent_id); 845 data_for_children->property_trees->effect_tree.Insert(node, parent_id);
846 layer->SetEffectTreeIndex(data_for_children->effect_tree_parent); 846 layer->SetEffectTreeIndex(data_for_children->effect_tree_parent);
847 data_for_children->property_trees->effect_id_to_index_map[layer->id()] = 847 data_for_children->property_trees->effect_id_to_index_map[layer->id()] =
848 node.id; 848 data_for_children->effect_tree_parent;
849 if (should_create_render_surface) { 849 if (should_create_render_surface) {
850 data_for_children->compound_transform_since_render_target = 850 data_for_children->compound_transform_since_render_target =
851 gfx::Transform(); 851 gfx::Transform();
852 data_for_children->axis_align_since_render_target = true; 852 data_for_children->axis_align_since_render_target = true;
853 } 853 }
854 return should_create_render_surface; 854 return should_create_render_surface;
855 } 855 }
856 856
857 template <typename LayerType> 857 template <typename LayerType>
858 void AddScrollNodeIfNeeded( 858 void AddScrollNodeIfNeeded(
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
918 node.data.transform_id = 918 node.data.transform_id =
919 data_for_children->transform_tree_parent->transform_tree_index(); 919 data_for_children->transform_tree_parent->transform_tree_index();
920 920
921 data_for_children->scroll_tree_parent = 921 data_for_children->scroll_tree_parent =
922 data_for_children->property_trees->scroll_tree.Insert(node, parent_id); 922 data_for_children->property_trees->scroll_tree.Insert(node, parent_id);
923 data_for_children->main_thread_scrolling_reasons = 923 data_for_children->main_thread_scrolling_reasons =
924 node.data.main_thread_scrolling_reasons; 924 node.data.main_thread_scrolling_reasons;
925 data_for_children->scroll_tree_parent_created_by_uninheritable_criteria = 925 data_for_children->scroll_tree_parent_created_by_uninheritable_criteria =
926 scroll_node_uninheritable_criteria; 926 scroll_node_uninheritable_criteria;
927 data_for_children->property_trees->scroll_id_to_index_map[layer->id()] = 927 data_for_children->property_trees->scroll_id_to_index_map[layer->id()] =
928 node.id; 928 data_for_children->scroll_tree_parent;
929 929
930 if (node.data.scrollable) { 930 if (node.data.scrollable) {
931 data_for_children->property_trees->scroll_tree.SetBaseScrollOffset( 931 data_for_children->property_trees->scroll_tree.SetBaseScrollOffset(
932 layer->id(), layer->CurrentScrollOffset()); 932 layer->id(), layer->CurrentScrollOffset());
933 } 933 }
934 } 934 }
935 935
936 layer->SetScrollTreeIndex(data_for_children->scroll_tree_parent); 936 layer->SetScrollTreeIndex(data_for_children->scroll_tree_parent);
937 } 937 }
938 938
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after
1264 if (SkColorGetA(color) != 255) 1264 if (SkColorGetA(color) != 255)
1265 color = SkColorSetA(color, 255); 1265 color = SkColorSetA(color, 255);
1266 BuildPropertyTreesTopLevelInternal( 1266 BuildPropertyTreesTopLevelInternal(
1267 root_layer, page_scale_layer, inner_viewport_scroll_layer, 1267 root_layer, page_scale_layer, inner_viewport_scroll_layer,
1268 outer_viewport_scroll_layer, overscroll_elasticity_layer, 1268 outer_viewport_scroll_layer, overscroll_elasticity_layer,
1269 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, 1269 elastic_overscroll, page_scale_factor, device_scale_factor, viewport,
1270 device_transform, property_trees, color); 1270 device_transform, property_trees, color);
1271 } 1271 }
1272 1272
1273 } // namespace cc 1273 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698