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/test/layer_tree_host_common_test.h" | 5 #include "cc/test/layer_tree_host_common_test.h" |
6 | 6 |
7 #include "cc/layers/layer.h" | 7 #include "cc/layers/layer.h" |
8 #include "cc/layers/layer_impl.h" | 8 #include "cc/layers/layer_impl.h" |
9 #include "cc/test/fake_layer_tree_host.h" | 9 #include "cc/test/fake_layer_tree_host.h" |
10 #include "cc/trees/draw_property_utils.h" | 10 #include "cc/trees/draw_property_utils.h" |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 root_layer->layer_tree_host()->outer_viewport_scroll_layer(); | 96 root_layer->layer_tree_host()->outer_viewport_scroll_layer(); |
97 float page_scale_factor = 1.f; | 97 float page_scale_factor = 1.f; |
98 float device_scale_factor = 1.f; | 98 float device_scale_factor = 1.f; |
99 gfx::Size device_viewport_size = | 99 gfx::Size device_viewport_size = |
100 gfx::Size(root_layer->bounds().width() * device_scale_factor, | 100 gfx::Size(root_layer->bounds().width() * device_scale_factor, |
101 root_layer->bounds().height() * device_scale_factor); | 101 root_layer->bounds().height() * device_scale_factor); |
102 BuildPropertyTreesAndComputeVisibleRects( | 102 BuildPropertyTreesAndComputeVisibleRects( |
103 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 103 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
104 outer_viewport_scroll_layer, page_scale_factor, device_scale_factor, | 104 outer_viewport_scroll_layer, page_scale_factor, device_scale_factor, |
105 gfx::Rect(device_viewport_size), identity_transform, | 105 gfx::Rect(device_viewport_size), identity_transform, |
| 106 can_render_to_separate_surface, |
106 root_layer->layer_tree_host()->property_trees(), &update_layer_list_); | 107 root_layer->layer_tree_host()->property_trees(), &update_layer_list_); |
107 } | 108 } |
108 | 109 |
109 void LayerTreeHostCommonTestBase:: | 110 void LayerTreeHostCommonTestBase:: |
110 ExecuteCalculateDrawPropertiesWithPropertyTrees(LayerImpl* root_layer) { | 111 ExecuteCalculateDrawPropertiesWithPropertyTrees(LayerImpl* root_layer) { |
111 DCHECK(root_layer->layer_tree_impl()); | 112 DCHECK(root_layer->layer_tree_impl()); |
112 LayerTreeHostCommon::PreCalculateMetaInformationForTesting(root_layer); | 113 LayerTreeHostCommon::PreCalculateMetaInformationForTesting(root_layer); |
113 | 114 |
114 gfx::Transform identity_transform; | 115 gfx::Transform identity_transform; |
| 116 bool can_render_to_separate_surface = true; |
115 LayerImpl* page_scale_layer = nullptr; | 117 LayerImpl* page_scale_layer = nullptr; |
116 LayerImpl* inner_viewport_scroll_layer = | 118 LayerImpl* inner_viewport_scroll_layer = |
117 root_layer->layer_tree_impl()->InnerViewportScrollLayer(); | 119 root_layer->layer_tree_impl()->InnerViewportScrollLayer(); |
118 LayerImpl* outer_viewport_scroll_layer = | 120 LayerImpl* outer_viewport_scroll_layer = |
119 root_layer->layer_tree_impl()->OuterViewportScrollLayer(); | 121 root_layer->layer_tree_impl()->OuterViewportScrollLayer(); |
120 float page_scale_factor = 1.f; | 122 float page_scale_factor = 1.f; |
121 float device_scale_factor = 1.f; | 123 float device_scale_factor = 1.f; |
122 gfx::Size device_viewport_size = | 124 gfx::Size device_viewport_size = |
123 gfx::Size(root_layer->bounds().width() * device_scale_factor, | 125 gfx::Size(root_layer->bounds().width() * device_scale_factor, |
124 root_layer->bounds().height() * device_scale_factor); | 126 root_layer->bounds().height() * device_scale_factor); |
125 std::vector<LayerImpl*> update_layer_list; | 127 std::vector<LayerImpl*> update_layer_list; |
126 BuildPropertyTreesAndComputeVisibleRects( | 128 BuildPropertyTreesAndComputeVisibleRects( |
127 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 129 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
128 outer_viewport_scroll_layer, page_scale_factor, device_scale_factor, | 130 outer_viewport_scroll_layer, page_scale_factor, device_scale_factor, |
129 gfx::Rect(device_viewport_size), identity_transform, | 131 gfx::Rect(device_viewport_size), identity_transform, |
| 132 can_render_to_separate_surface, |
130 root_layer->layer_tree_impl()->property_trees(), &update_layer_list); | 133 root_layer->layer_tree_impl()->property_trees(), &update_layer_list); |
131 } | 134 } |
132 | 135 |
133 void LayerTreeHostCommonTestBase::ExecuteCalculateDrawProperties( | 136 void LayerTreeHostCommonTestBase::ExecuteCalculateDrawProperties( |
134 LayerImpl* root_layer, | 137 LayerImpl* root_layer, |
135 float device_scale_factor, | 138 float device_scale_factor, |
136 float page_scale_factor, | 139 float page_scale_factor, |
137 LayerImpl* page_scale_layer, | 140 LayerImpl* page_scale_layer, |
138 bool can_use_lcd_text, | 141 bool can_use_lcd_text, |
139 bool layers_always_allowed_lcd_text) { | 142 bool layers_always_allowed_lcd_text) { |
(...skipping 19 matching lines...) Expand all Loading... |
159 inputs.layers_always_allowed_lcd_text = layers_always_allowed_lcd_text; | 162 inputs.layers_always_allowed_lcd_text = layers_always_allowed_lcd_text; |
160 inputs.can_adjust_raster_scales = true; | 163 inputs.can_adjust_raster_scales = true; |
161 | 164 |
162 ++render_surface_layer_list_count_; | 165 ++render_surface_layer_list_count_; |
163 inputs.current_render_surface_layer_list_id = | 166 inputs.current_render_surface_layer_list_id = |
164 render_surface_layer_list_count_; | 167 render_surface_layer_list_count_; |
165 | 168 |
166 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 169 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
167 } | 170 } |
168 | 171 |
| 172 void LayerTreeHostCommonTestBase:: |
| 173 ExecuteCalculateDrawPropertiesWithoutSeparateSurfaces( |
| 174 LayerImpl* root_layer) { |
| 175 gfx::Transform identity_matrix; |
| 176 gfx::Size device_viewport_size = |
| 177 gfx::Size(root_layer->bounds().width(), root_layer->bounds().height()); |
| 178 render_surface_layer_list_impl_.reset(new LayerImplList); |
| 179 |
| 180 DCHECK(!root_layer->bounds().IsEmpty()); |
| 181 LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( |
| 182 root_layer, device_viewport_size, render_surface_layer_list_impl_.get()); |
| 183 inputs.can_adjust_raster_scales = true; |
| 184 inputs.can_render_to_separate_surface = false; |
| 185 |
| 186 ++render_surface_layer_list_count_; |
| 187 inputs.current_render_surface_layer_list_id = |
| 188 render_surface_layer_list_count_; |
| 189 |
| 190 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 191 } |
| 192 |
169 bool LayerTreeHostCommonTestBase::UpdateLayerListContains(int id) const { | 193 bool LayerTreeHostCommonTestBase::UpdateLayerListContains(int id) const { |
170 for (size_t i = 0; i < update_layer_list_.size(); ++i) { | 194 for (size_t i = 0; i < update_layer_list_.size(); ++i) { |
171 if (update_layer_list_[i]->id() == id) | 195 if (update_layer_list_[i]->id() == id) |
172 return true; | 196 return true; |
173 } | 197 } |
174 return false; | 198 return false; |
175 } | 199 } |
176 | 200 |
177 LayerTreeHostCommonTest::LayerTreeHostCommonTest() | 201 LayerTreeHostCommonTest::LayerTreeHostCommonTest() |
178 : LayerTreeHostCommonTestBase(LayerTreeSettings()) { | 202 : LayerTreeHostCommonTestBase(LayerTreeSettings()) { |
179 } | 203 } |
180 | 204 |
181 LayerTreeHostCommonTest::LayerTreeHostCommonTest( | 205 LayerTreeHostCommonTest::LayerTreeHostCommonTest( |
182 const LayerTreeSettings& settings) | 206 const LayerTreeSettings& settings) |
183 : LayerTreeHostCommonTestBase(settings) { | 207 : LayerTreeHostCommonTestBase(settings) { |
184 } | 208 } |
185 | 209 |
186 } // namespace cc | 210 } // namespace cc |
OLD | NEW |