| 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/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 786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 797 } | 797 } |
| 798 | 798 |
| 799 static inline float Opacity(Layer* layer) { | 799 static inline float Opacity(Layer* layer) { |
| 800 return layer->opacity(); | 800 return layer->opacity(); |
| 801 } | 801 } |
| 802 | 802 |
| 803 static inline float Opacity(LayerImpl* layer) { | 803 static inline float Opacity(LayerImpl* layer) { |
| 804 return layer->test_properties()->opacity; | 804 return layer->test_properties()->opacity; |
| 805 } | 805 } |
| 806 | 806 |
| 807 static inline SkXfermode::Mode BlendMode(Layer* layer) { | 807 static inline SkBlendMode BlendMode(Layer* layer) { |
| 808 return layer->blend_mode(); | 808 return layer->blend_mode(); |
| 809 } | 809 } |
| 810 | 810 |
| 811 static inline SkXfermode::Mode BlendMode(LayerImpl* layer) { | 811 static inline SkBlendMode BlendMode(LayerImpl* layer) { |
| 812 return layer->test_properties()->blend_mode; | 812 return layer->test_properties()->blend_mode; |
| 813 } | 813 } |
| 814 | 814 |
| 815 static inline const FilterOperations& Filters(Layer* layer) { | 815 static inline const FilterOperations& Filters(Layer* layer) { |
| 816 return layer->filters(); | 816 return layer->filters(); |
| 817 } | 817 } |
| 818 | 818 |
| 819 static inline const gfx::PointF FiltersOrigin(Layer* layer) { | 819 static inline const gfx::PointF FiltersOrigin(Layer* layer) { |
| 820 return layer->filters_origin(); | 820 return layer->filters_origin(); |
| 821 } | 821 } |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 904 TRACE_EVENT_INSTANT0( | 904 TRACE_EVENT_INSTANT0( |
| 905 "cc", "PropertyTreeBuilder::ShouldCreateRenderSurface flattening", | 905 "cc", "PropertyTreeBuilder::ShouldCreateRenderSurface flattening", |
| 906 TRACE_EVENT_SCOPE_THREAD); | 906 TRACE_EVENT_SCOPE_THREAD); |
| 907 return true; | 907 return true; |
| 908 } | 908 } |
| 909 | 909 |
| 910 // If the layer has blending. | 910 // If the layer has blending. |
| 911 // TODO(rosca): this is temporary, until blending is implemented for other | 911 // TODO(rosca): this is temporary, until blending is implemented for other |
| 912 // types of quads than RenderPassDrawQuad. Layers having descendants that draw | 912 // types of quads than RenderPassDrawQuad. Layers having descendants that draw |
| 913 // content will still create a separate rendering surface. | 913 // content will still create a separate rendering surface. |
| 914 if (BlendMode(layer) != SkXfermode::kSrcOver_Mode) { | 914 if (BlendMode(layer) != SkBlendMode::kSrcOver) { |
| 915 TRACE_EVENT_INSTANT0( | 915 TRACE_EVENT_INSTANT0( |
| 916 "cc", "PropertyTreeBuilder::ShouldCreateRenderSurface blending", | 916 "cc", "PropertyTreeBuilder::ShouldCreateRenderSurface blending", |
| 917 TRACE_EVENT_SCOPE_THREAD); | 917 TRACE_EVENT_SCOPE_THREAD); |
| 918 return true; | 918 return true; |
| 919 } | 919 } |
| 920 // If the layer clips its descendants but it is not axis-aligned with respect | 920 // If the layer clips its descendants but it is not axis-aligned with respect |
| 921 // to its parent. | 921 // to its parent. |
| 922 bool layer_clips_external_content = LayerClipsSubtree(layer); | 922 bool layer_clips_external_content = LayerClipsSubtree(layer); |
| 923 if (layer_clips_external_content && !preserves_2d_axis_alignment && | 923 if (layer_clips_external_content && !preserves_2d_axis_alignment && |
| 924 num_descendants_that_draw_content > 0) { | 924 num_descendants_that_draw_content > 0) { |
| (...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1236 layer->set_property_tree_sequence_number( | 1236 layer->set_property_tree_sequence_number( |
| 1237 data_from_parent.property_trees->sequence_number); | 1237 data_from_parent.property_trees->sequence_number); |
| 1238 | 1238 |
| 1239 DataForRecursion<LayerType> data_for_children(data_from_parent); | 1239 DataForRecursion<LayerType> data_for_children(data_from_parent); |
| 1240 | 1240 |
| 1241 bool created_render_surface = | 1241 bool created_render_surface = |
| 1242 AddEffectNodeIfNeeded(data_from_parent, layer, &data_for_children); | 1242 AddEffectNodeIfNeeded(data_from_parent, layer, &data_for_children); |
| 1243 | 1243 |
| 1244 if (created_render_surface) { | 1244 if (created_render_surface) { |
| 1245 data_for_children.render_target = data_for_children.effect_tree_parent; | 1245 data_for_children.render_target = data_for_children.effect_tree_parent; |
| 1246 layer->set_draw_blend_mode(SkXfermode::kSrcOver_Mode); | 1246 layer->set_draw_blend_mode(SkBlendMode::kSrcOver); |
| 1247 } else { | 1247 } else { |
| 1248 layer->set_draw_blend_mode(BlendMode(layer)); | 1248 layer->set_draw_blend_mode(BlendMode(layer)); |
| 1249 } | 1249 } |
| 1250 | 1250 |
| 1251 bool created_transform_node = AddTransformNodeIfNeeded( | 1251 bool created_transform_node = AddTransformNodeIfNeeded( |
| 1252 data_from_parent, layer, created_render_surface, &data_for_children); | 1252 data_from_parent, layer, created_render_surface, &data_for_children); |
| 1253 AddClipNodeIfNeeded(data_from_parent, layer, created_render_surface, | 1253 AddClipNodeIfNeeded(data_from_parent, layer, created_render_surface, |
| 1254 created_transform_node, &data_for_children); | 1254 created_transform_node, &data_for_children); |
| 1255 | 1255 |
| 1256 AddScrollNodeIfNeeded(data_from_parent, layer, &data_for_children); | 1256 AddScrollNodeIfNeeded(data_from_parent, layer, &data_for_children); |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1496 color = SkColorSetA(color, 255); | 1496 color = SkColorSetA(color, 255); |
| 1497 BuildPropertyTreesTopLevelInternal( | 1497 BuildPropertyTreesTopLevelInternal( |
| 1498 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 1498 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
| 1499 outer_viewport_scroll_layer, overscroll_elasticity_layer, | 1499 outer_viewport_scroll_layer, overscroll_elasticity_layer, |
| 1500 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, | 1500 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, |
| 1501 device_transform, property_trees, color); | 1501 device_transform, property_trees, color); |
| 1502 property_trees->ResetCachedData(); | 1502 property_trees->ResetCachedData(); |
| 1503 } | 1503 } |
| 1504 | 1504 |
| 1505 } // namespace cc | 1505 } // namespace cc |
| OLD | NEW |