| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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/layer_tree_impl.h" | 5 #include "cc/trees/layer_tree_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 1011 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1022 "cc", "LayerTreeImpl::UpdateDrawProperties::CalculateDrawProperties", | 1022 "cc", "LayerTreeImpl::UpdateDrawProperties::CalculateDrawProperties", |
| 1023 "IsActive", IsActiveTree(), "SourceFrameNumber", source_frame_number_); | 1023 "IsActive", IsActiveTree(), "SourceFrameNumber", source_frame_number_); |
| 1024 // TODO(crbug.com/692780): Remove this option entirely once this get to | 1024 // TODO(crbug.com/692780): Remove this option entirely once this get to |
| 1025 // stable and proves it works. | 1025 // stable and proves it works. |
| 1026 bool can_render_to_separate_surface = true; | 1026 bool can_render_to_separate_surface = true; |
| 1027 | 1027 |
| 1028 // We verify visible rect calculations whenever we verify clip tree | 1028 // We verify visible rect calculations whenever we verify clip tree |
| 1029 // calculations except when this function is explicitly passed a flag asking | 1029 // calculations except when this function is explicitly passed a flag asking |
| 1030 // us to skip it. | 1030 // us to skip it. |
| 1031 LayerTreeHostCommon::CalcDrawPropsImplInputs inputs( | 1031 LayerTreeHostCommon::CalcDrawPropsImplInputs inputs( |
| 1032 layer_list_[0], DrawViewportSize(), | 1032 layer_list_[0], DeviceViewport().size(), |
| 1033 layer_tree_host_impl_->DrawTransform(), device_scale_factor(), | 1033 layer_tree_host_impl_->DrawTransform(), device_scale_factor(), |
| 1034 current_page_scale_factor(), PageScaleLayer(), | 1034 current_page_scale_factor(), PageScaleLayer(), |
| 1035 InnerViewportScrollLayer(), OuterViewportScrollLayer(), | 1035 InnerViewportScrollLayer(), OuterViewportScrollLayer(), |
| 1036 elastic_overscroll()->Current(IsActiveTree()), | 1036 elastic_overscroll()->Current(IsActiveTree()), |
| 1037 OverscrollElasticityLayer(), resource_provider()->max_texture_size(), | 1037 OverscrollElasticityLayer(), resource_provider()->max_texture_size(), |
| 1038 can_render_to_separate_surface, | 1038 can_render_to_separate_surface, |
| 1039 settings().layer_transforms_should_scale_layer_contents, | 1039 settings().layer_transforms_should_scale_layer_contents, |
| 1040 &render_surface_list_, &property_trees_); | 1040 &render_surface_list_, &property_trees_); |
| 1041 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1041 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1042 if (const char* client_name = GetClientNameForMetrics()) { | 1042 if (const char* client_name = GetClientNameForMetrics()) { |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1162 | 1162 |
| 1163 void LayerTreeImpl::BuildPropertyTreesForTesting() { | 1163 void LayerTreeImpl::BuildPropertyTreesForTesting() { |
| 1164 SetElementIdsForTesting(); | 1164 SetElementIdsForTesting(); |
| 1165 property_trees_.needs_rebuild = true; | 1165 property_trees_.needs_rebuild = true; |
| 1166 property_trees_.transform_tree.set_source_to_parent_updates_allowed(true); | 1166 property_trees_.transform_tree.set_source_to_parent_updates_allowed(true); |
| 1167 PropertyTreeBuilder::BuildPropertyTrees( | 1167 PropertyTreeBuilder::BuildPropertyTrees( |
| 1168 layer_list_[0], PageScaleLayer(), InnerViewportScrollLayer(), | 1168 layer_list_[0], PageScaleLayer(), InnerViewportScrollLayer(), |
| 1169 OuterViewportScrollLayer(), OverscrollElasticityLayer(), | 1169 OuterViewportScrollLayer(), OverscrollElasticityLayer(), |
| 1170 elastic_overscroll()->Current(IsActiveTree()), | 1170 elastic_overscroll()->Current(IsActiveTree()), |
| 1171 current_page_scale_factor(), device_scale_factor(), | 1171 current_page_scale_factor(), device_scale_factor(), |
| 1172 gfx::Rect(DrawViewportSize()), layer_tree_host_impl_->DrawTransform(), | 1172 gfx::Rect(DeviceViewport().size()), |
| 1173 &property_trees_); | 1173 layer_tree_host_impl_->DrawTransform(), &property_trees_); |
| 1174 property_trees_.transform_tree.set_source_to_parent_updates_allowed(false); | 1174 property_trees_.transform_tree.set_source_to_parent_updates_allowed(false); |
| 1175 } | 1175 } |
| 1176 | 1176 |
| 1177 const RenderSurfaceList& LayerTreeImpl::GetRenderSurfaceList() const { | 1177 const RenderSurfaceList& LayerTreeImpl::GetRenderSurfaceList() const { |
| 1178 // If this assert triggers, then the list is dirty. | 1178 // If this assert triggers, then the list is dirty. |
| 1179 DCHECK(!needs_update_draw_properties_); | 1179 DCHECK(!needs_update_draw_properties_); |
| 1180 return render_surface_list_; | 1180 return render_surface_list_; |
| 1181 } | 1181 } |
| 1182 | 1182 |
| 1183 const Region& LayerTreeImpl::UnoccludedScreenSpaceRegion() const { | 1183 const Region& LayerTreeImpl::UnoccludedScreenSpaceRegion() const { |
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1385 } | 1385 } |
| 1386 | 1386 |
| 1387 base::TimeDelta LayerTreeImpl::CurrentBeginFrameInterval() const { | 1387 base::TimeDelta LayerTreeImpl::CurrentBeginFrameInterval() const { |
| 1388 return layer_tree_host_impl_->CurrentBeginFrameInterval(); | 1388 return layer_tree_host_impl_->CurrentBeginFrameInterval(); |
| 1389 } | 1389 } |
| 1390 | 1390 |
| 1391 gfx::Rect LayerTreeImpl::DeviceViewport() const { | 1391 gfx::Rect LayerTreeImpl::DeviceViewport() const { |
| 1392 return layer_tree_host_impl_->DeviceViewport(); | 1392 return layer_tree_host_impl_->DeviceViewport(); |
| 1393 } | 1393 } |
| 1394 | 1394 |
| 1395 gfx::Size LayerTreeImpl::DrawViewportSize() const { | |
| 1396 return layer_tree_host_impl_->DrawViewportSize(); | |
| 1397 } | |
| 1398 | |
| 1399 const gfx::Rect LayerTreeImpl::ViewportRectForTilePriority() const { | 1395 const gfx::Rect LayerTreeImpl::ViewportRectForTilePriority() const { |
| 1400 return layer_tree_host_impl_->ViewportRectForTilePriority(); | 1396 return layer_tree_host_impl_->ViewportRectForTilePriority(); |
| 1401 } | 1397 } |
| 1402 | 1398 |
| 1403 std::unique_ptr<ScrollbarAnimationController> | 1399 std::unique_ptr<ScrollbarAnimationController> |
| 1404 LayerTreeImpl::CreateScrollbarAnimationController(ElementId scroll_element_id) { | 1400 LayerTreeImpl::CreateScrollbarAnimationController(ElementId scroll_element_id) { |
| 1405 DCHECK(!settings().scrollbar_fade_delay.is_zero()); | 1401 DCHECK(!settings().scrollbar_fade_delay.is_zero()); |
| 1406 DCHECK(!settings().scrollbar_fade_duration.is_zero()); | 1402 DCHECK(!settings().scrollbar_fade_duration.is_zero()); |
| 1407 base::TimeDelta fade_delay = settings().scrollbar_fade_delay; | 1403 base::TimeDelta fade_delay = settings().scrollbar_fade_delay; |
| 1408 base::TimeDelta fade_duration = settings().scrollbar_fade_duration; | 1404 base::TimeDelta fade_duration = settings().scrollbar_fade_duration; |
| (...skipping 683 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2092 | 2088 |
| 2093 void LayerTreeImpl::ResetAllChangeTracking() { | 2089 void LayerTreeImpl::ResetAllChangeTracking() { |
| 2094 layers_that_should_push_properties_.clear(); | 2090 layers_that_should_push_properties_.clear(); |
| 2095 // Iterate over all layers, including masks. | 2091 // Iterate over all layers, including masks. |
| 2096 for (auto& layer : *layers_) | 2092 for (auto& layer : *layers_) |
| 2097 layer->ResetChangeTracking(); | 2093 layer->ResetChangeTracking(); |
| 2098 property_trees_.ResetAllChangeTracking(); | 2094 property_trees_.ResetAllChangeTracking(); |
| 2099 } | 2095 } |
| 2100 | 2096 |
| 2101 } // namespace cc | 2097 } // namespace cc |
| OLD | NEW |