| 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_host_common.h" | 5 #include "cc/trees/layer_tree_host_common.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 | 10 |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 float page_scale_factor, | 76 float page_scale_factor, |
| 77 const LayerImpl* page_scale_layer, | 77 const LayerImpl* page_scale_layer, |
| 78 const LayerImpl* inner_viewport_scroll_layer, | 78 const LayerImpl* inner_viewport_scroll_layer, |
| 79 const LayerImpl* outer_viewport_scroll_layer, | 79 const LayerImpl* outer_viewport_scroll_layer, |
| 80 const gfx::Vector2dF& elastic_overscroll, | 80 const gfx::Vector2dF& elastic_overscroll, |
| 81 const LayerImpl* elastic_overscroll_application_layer, | 81 const LayerImpl* elastic_overscroll_application_layer, |
| 82 int max_texture_size, | 82 int max_texture_size, |
| 83 bool can_render_to_separate_surface, | 83 bool can_render_to_separate_surface, |
| 84 bool can_adjust_raster_scales, | 84 bool can_adjust_raster_scales, |
| 85 bool verify_clip_tree_calculations, | 85 bool verify_clip_tree_calculations, |
| 86 bool verify_visible_rect_calculations, |
| 86 bool verify_transform_tree_calculations, | 87 bool verify_transform_tree_calculations, |
| 87 LayerImplList* render_surface_layer_list, | 88 LayerImplList* render_surface_layer_list, |
| 88 PropertyTrees* property_trees) | 89 PropertyTrees* property_trees) |
| 89 : root_layer(root_layer), | 90 : root_layer(root_layer), |
| 90 device_viewport_size(device_viewport_size), | 91 device_viewport_size(device_viewport_size), |
| 91 device_transform(device_transform), | 92 device_transform(device_transform), |
| 92 device_scale_factor(device_scale_factor), | 93 device_scale_factor(device_scale_factor), |
| 93 page_scale_factor(page_scale_factor), | 94 page_scale_factor(page_scale_factor), |
| 94 page_scale_layer(page_scale_layer), | 95 page_scale_layer(page_scale_layer), |
| 95 inner_viewport_scroll_layer(inner_viewport_scroll_layer), | 96 inner_viewport_scroll_layer(inner_viewport_scroll_layer), |
| 96 outer_viewport_scroll_layer(outer_viewport_scroll_layer), | 97 outer_viewport_scroll_layer(outer_viewport_scroll_layer), |
| 97 elastic_overscroll(elastic_overscroll), | 98 elastic_overscroll(elastic_overscroll), |
| 98 elastic_overscroll_application_layer( | 99 elastic_overscroll_application_layer( |
| 99 elastic_overscroll_application_layer), | 100 elastic_overscroll_application_layer), |
| 100 max_texture_size(max_texture_size), | 101 max_texture_size(max_texture_size), |
| 101 can_render_to_separate_surface(can_render_to_separate_surface), | 102 can_render_to_separate_surface(can_render_to_separate_surface), |
| 102 can_adjust_raster_scales(can_adjust_raster_scales), | 103 can_adjust_raster_scales(can_adjust_raster_scales), |
| 103 verify_clip_tree_calculations(verify_clip_tree_calculations), | 104 verify_clip_tree_calculations(verify_clip_tree_calculations), |
| 105 verify_visible_rect_calculations(verify_visible_rect_calculations), |
| 104 verify_transform_tree_calculations(verify_transform_tree_calculations), | 106 verify_transform_tree_calculations(verify_transform_tree_calculations), |
| 105 render_surface_layer_list(render_surface_layer_list), | 107 render_surface_layer_list(render_surface_layer_list), |
| 106 property_trees(property_trees) {} | 108 property_trees(property_trees) {} |
| 107 | 109 |
| 108 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting:: | 110 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting:: |
| 109 CalcDrawPropsImplInputsForTesting(LayerImpl* root_layer, | 111 CalcDrawPropsImplInputsForTesting(LayerImpl* root_layer, |
| 110 const gfx::Size& device_viewport_size, | 112 const gfx::Size& device_viewport_size, |
| 111 const gfx::Transform& device_transform, | 113 const gfx::Transform& device_transform, |
| 112 float device_scale_factor, | 114 float device_scale_factor, |
| 113 LayerImplList* render_surface_layer_list) | 115 LayerImplList* render_surface_layer_list) |
| 114 : CalcDrawPropsImplInputs(root_layer, | 116 : CalcDrawPropsImplInputs(root_layer, |
| 115 device_viewport_size, | 117 device_viewport_size, |
| 116 device_transform, | 118 device_transform, |
| 117 device_scale_factor, | 119 device_scale_factor, |
| 118 1.f, | 120 1.f, |
| 119 NULL, | 121 NULL, |
| 120 NULL, | 122 NULL, |
| 121 NULL, | 123 NULL, |
| 122 gfx::Vector2dF(), | 124 gfx::Vector2dF(), |
| 123 NULL, | 125 NULL, |
| 124 std::numeric_limits<int>::max() / 2, | 126 std::numeric_limits<int>::max() / 2, |
| 125 true, | 127 true, |
| 126 false, | 128 false, |
| 127 true, | 129 true, |
| 128 true, | 130 true, |
| 131 true, |
| 129 render_surface_layer_list, | 132 render_surface_layer_list, |
| 130 GetPropertyTrees(root_layer)) { | 133 GetPropertyTrees(root_layer)) { |
| 131 DCHECK(root_layer); | 134 DCHECK(root_layer); |
| 132 DCHECK(render_surface_layer_list); | 135 DCHECK(render_surface_layer_list); |
| 133 } | 136 } |
| 134 | 137 |
| 135 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting:: | 138 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting:: |
| 136 CalcDrawPropsImplInputsForTesting(LayerImpl* root_layer, | 139 CalcDrawPropsImplInputsForTesting(LayerImpl* root_layer, |
| 137 const gfx::Size& device_viewport_size, | 140 const gfx::Size& device_viewport_size, |
| 138 const gfx::Transform& device_transform, | 141 const gfx::Transform& device_transform, |
| (...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 } | 551 } |
| 549 | 552 |
| 550 draw_property_utils::BuildPropertyTreesAndComputeVisibleRects( | 553 draw_property_utils::BuildPropertyTreesAndComputeVisibleRects( |
| 551 inputs->root_layer, inputs->page_scale_layer, | 554 inputs->root_layer, inputs->page_scale_layer, |
| 552 inputs->inner_viewport_scroll_layer, | 555 inputs->inner_viewport_scroll_layer, |
| 553 inputs->outer_viewport_scroll_layer, | 556 inputs->outer_viewport_scroll_layer, |
| 554 inputs->elastic_overscroll_application_layer, | 557 inputs->elastic_overscroll_application_layer, |
| 555 inputs->elastic_overscroll, inputs->page_scale_factor, | 558 inputs->elastic_overscroll, inputs->page_scale_factor, |
| 556 inputs->device_scale_factor, gfx::Rect(inputs->device_viewport_size), | 559 inputs->device_scale_factor, gfx::Rect(inputs->device_viewport_size), |
| 557 inputs->device_transform, inputs->can_render_to_separate_surface, | 560 inputs->device_transform, inputs->can_render_to_separate_surface, |
| 558 inputs->property_trees, &visible_layer_list); | 561 inputs->verify_visible_rect_calculations, inputs->property_trees, |
| 562 &visible_layer_list); |
| 559 | 563 |
| 560 // Property trees are normally constructed on the main thread and | 564 // Property trees are normally constructed on the main thread and |
| 561 // passed to compositor thread. Source to parent updates on them are not | 565 // passed to compositor thread. Source to parent updates on them are not |
| 562 // allowed in the compositor thread. Some tests build them on the | 566 // allowed in the compositor thread. Some tests build them on the |
| 563 // compositor thread, so we need to explicitly disallow source to parent | 567 // compositor thread, so we need to explicitly disallow source to parent |
| 564 // updates when they are built on compositor thread. | 568 // updates when they are built on compositor thread. |
| 565 inputs->property_trees->transform_tree | 569 inputs->property_trees->transform_tree |
| 566 .set_source_to_parent_updates_allowed(false); | 570 .set_source_to_parent_updates_allowed(false); |
| 567 if (should_measure_property_tree_performance) { | 571 if (should_measure_property_tree_performance) { |
| 568 TRACE_EVENT_END0( | 572 TRACE_EVENT_END0( |
| (...skipping 21 matching lines...) Expand all Loading... |
| 590 // Similarly, the device viewport and device transform are shared | 594 // Similarly, the device viewport and device transform are shared |
| 591 // by both trees. | 595 // by both trees. |
| 592 inputs->property_trees->clip_tree.SetViewportClip( | 596 inputs->property_trees->clip_tree.SetViewportClip( |
| 593 gfx::RectF(gfx::SizeF(inputs->device_viewport_size))); | 597 gfx::RectF(gfx::SizeF(inputs->device_viewport_size))); |
| 594 inputs->property_trees->transform_tree.SetDeviceTransform( | 598 inputs->property_trees->transform_tree.SetDeviceTransform( |
| 595 inputs->device_transform, inputs->root_layer->position()); | 599 inputs->device_transform, inputs->root_layer->position()); |
| 596 inputs->property_trees->transform_tree.SetDeviceTransformScaleFactor( | 600 inputs->property_trees->transform_tree.SetDeviceTransformScaleFactor( |
| 597 inputs->device_transform); | 601 inputs->device_transform); |
| 598 draw_property_utils::ComputeVisibleRects( | 602 draw_property_utils::ComputeVisibleRects( |
| 599 inputs->root_layer, inputs->property_trees, | 603 inputs->root_layer, inputs->property_trees, |
| 600 inputs->can_render_to_separate_surface, &visible_layer_list); | 604 inputs->can_render_to_separate_surface, |
| 605 inputs->verify_visible_rect_calculations, &visible_layer_list); |
| 601 break; | 606 break; |
| 602 } | 607 } |
| 603 } | 608 } |
| 604 | 609 |
| 605 if (should_measure_property_tree_performance) { | 610 if (should_measure_property_tree_performance) { |
| 606 TRACE_EVENT_BEGIN0(TRACE_DISABLED_BY_DEFAULT("cc.debug.cdp-perf"), | 611 TRACE_EVENT_BEGIN0(TRACE_DISABLED_BY_DEFAULT("cc.debug.cdp-perf"), |
| 607 "LayerTreeHostCommon::CalculateDrawProperties"); | 612 "LayerTreeHostCommon::CalculateDrawProperties"); |
| 608 } | 613 } |
| 609 | 614 |
| 610 DCHECK(inputs->can_render_to_separate_surface == | 615 DCHECK(inputs->can_render_to_separate_surface == |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 716 | 721 |
| 717 PropertyTrees* GetPropertyTrees(Layer* layer) { | 722 PropertyTrees* GetPropertyTrees(Layer* layer) { |
| 718 return layer->GetLayerTree()->property_trees(); | 723 return layer->GetLayerTree()->property_trees(); |
| 719 } | 724 } |
| 720 | 725 |
| 721 PropertyTrees* GetPropertyTrees(LayerImpl* layer) { | 726 PropertyTrees* GetPropertyTrees(LayerImpl* layer) { |
| 722 return layer->layer_tree_impl()->property_trees(); | 727 return layer->layer_tree_impl()->property_trees(); |
| 723 } | 728 } |
| 724 | 729 |
| 725 } // namespace cc | 730 } // namespace cc |
| OLD | NEW |