| 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/layer_impl.h" | 5 #include "cc/layers/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 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 } | 153 } |
| 154 | 154 |
| 155 void LayerImpl::SetClipTreeIndex(int index) { | 155 void LayerImpl::SetClipTreeIndex(int index) { |
| 156 clip_tree_index_ = index; | 156 clip_tree_index_ = index; |
| 157 } | 157 } |
| 158 | 158 |
| 159 void LayerImpl::SetEffectTreeIndex(int index) { | 159 void LayerImpl::SetEffectTreeIndex(int index) { |
| 160 effect_tree_index_ = index; | 160 effect_tree_index_ = index; |
| 161 } | 161 } |
| 162 | 162 |
| 163 int LayerImpl::render_target_effect_tree_index() const { |
| 164 EffectNode* effect_node = |
| 165 layer_tree_impl_->property_trees()->effect_tree.Node(effect_tree_index_); |
| 166 if (effect_node->render_surface) |
| 167 return effect_node->id; |
| 168 else |
| 169 return effect_node->target_id; |
| 170 } |
| 171 |
| 163 void LayerImpl::SetScrollTreeIndex(int index) { | 172 void LayerImpl::SetScrollTreeIndex(int index) { |
| 164 scroll_tree_index_ = index; | 173 scroll_tree_index_ = index; |
| 165 } | 174 } |
| 166 | 175 |
| 167 void LayerImpl::ClearRenderSurfaceLayerList() { | 176 void LayerImpl::ClearRenderSurfaceLayerList() { |
| 168 if (render_surface_) | 177 if (render_surface_) |
| 169 render_surface_->ClearLayerLists(); | 178 render_surface_->ClearLayerLists(); |
| 170 } | 179 } |
| 171 | 180 |
| 172 void LayerImpl::PopulateSharedQuadState(SharedQuadState* state) const { | 181 void LayerImpl::PopulateSharedQuadState(SharedQuadState* state) const { |
| (...skipping 963 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1136 gfx::Rect LayerImpl::GetScaledEnclosingRectInTargetSpace(float scale) const { | 1145 gfx::Rect LayerImpl::GetScaledEnclosingRectInTargetSpace(float scale) const { |
| 1137 gfx::Transform scaled_draw_transform = DrawTransform(); | 1146 gfx::Transform scaled_draw_transform = DrawTransform(); |
| 1138 scaled_draw_transform.Scale(SK_MScalar1 / scale, SK_MScalar1 / scale); | 1147 scaled_draw_transform.Scale(SK_MScalar1 / scale, SK_MScalar1 / scale); |
| 1139 gfx::Size scaled_bounds = gfx::ScaleToCeiledSize(bounds(), scale); | 1148 gfx::Size scaled_bounds = gfx::ScaleToCeiledSize(bounds(), scale); |
| 1140 return MathUtil::MapEnclosingClippedRect(scaled_draw_transform, | 1149 return MathUtil::MapEnclosingClippedRect(scaled_draw_transform, |
| 1141 gfx::Rect(scaled_bounds)); | 1150 gfx::Rect(scaled_bounds)); |
| 1142 } | 1151 } |
| 1143 | 1152 |
| 1144 RenderSurfaceImpl* LayerImpl::render_target() { | 1153 RenderSurfaceImpl* LayerImpl::render_target() { |
| 1145 EffectTree& effect_tree = layer_tree_impl_->property_trees()->effect_tree; | 1154 EffectTree& effect_tree = layer_tree_impl_->property_trees()->effect_tree; |
| 1146 EffectNode* node = effect_tree.Node(effect_tree_index_); | 1155 return effect_tree.Node(render_target_effect_tree_index())->render_surface; |
| 1147 | |
| 1148 if (node->render_surface) | |
| 1149 return node->render_surface; | |
| 1150 else | |
| 1151 return effect_tree.Node(node->target_id)->render_surface; | |
| 1152 } | 1156 } |
| 1153 | 1157 |
| 1154 const RenderSurfaceImpl* LayerImpl::render_target() const { | 1158 const RenderSurfaceImpl* LayerImpl::render_target() const { |
| 1155 const EffectTree& effect_tree = | 1159 const EffectTree& effect_tree = |
| 1156 layer_tree_impl_->property_trees()->effect_tree; | 1160 layer_tree_impl_->property_trees()->effect_tree; |
| 1157 const EffectNode* node = effect_tree.Node(effect_tree_index_); | 1161 return effect_tree.Node(render_target_effect_tree_index())->render_surface; |
| 1158 | |
| 1159 if (node->render_surface) | |
| 1160 return node->render_surface; | |
| 1161 else | |
| 1162 return effect_tree.Node(node->target_id)->render_surface; | |
| 1163 } | 1162 } |
| 1164 | 1163 |
| 1165 bool LayerImpl::IsHidden() const { | 1164 bool LayerImpl::IsHidden() const { |
| 1166 EffectTree& effect_tree = layer_tree_impl_->property_trees()->effect_tree; | 1165 EffectTree& effect_tree = layer_tree_impl_->property_trees()->effect_tree; |
| 1167 EffectNode* node = effect_tree.Node(effect_tree_index_); | 1166 EffectNode* node = effect_tree.Node(effect_tree_index_); |
| 1168 return node->screen_space_opacity == 0.f; | 1167 return node->screen_space_opacity == 0.f; |
| 1169 } | 1168 } |
| 1170 | 1169 |
| 1171 bool LayerImpl::InsideReplica() const { | 1170 bool LayerImpl::InsideReplica() const { |
| 1172 // There are very few render targets so this should be cheap to do for each | 1171 // There are very few render targets so this should be cheap to do for each |
| (...skipping 22 matching lines...) Expand all Loading... |
| 1195 .layer_transforms_should_scale_layer_contents) { | 1194 .layer_transforms_should_scale_layer_contents) { |
| 1196 return default_scale; | 1195 return default_scale; |
| 1197 } | 1196 } |
| 1198 | 1197 |
| 1199 gfx::Vector2dF transform_scales = MathUtil::ComputeTransform2dScaleComponents( | 1198 gfx::Vector2dF transform_scales = MathUtil::ComputeTransform2dScaleComponents( |
| 1200 ScreenSpaceTransform(), default_scale); | 1199 ScreenSpaceTransform(), default_scale); |
| 1201 return std::max(transform_scales.x(), transform_scales.y()); | 1200 return std::max(transform_scales.x(), transform_scales.y()); |
| 1202 } | 1201 } |
| 1203 | 1202 |
| 1204 } // namespace cc | 1203 } // namespace cc |
| OLD | NEW |