OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 "content/renderer/gpu/render_widget_compositor.h" | 5 #include "content/renderer/gpu/render_widget_compositor.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <cmath> | 9 #include <cmath> |
10 #include <limits> | 10 #include <limits> |
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
306 &max_untiled_layer_height); | 306 &max_untiled_layer_height); |
307 } | 307 } |
308 | 308 |
309 settings.max_untiled_layer_size = gfx::Size(max_untiled_layer_width, | 309 settings.max_untiled_layer_size = gfx::Size(max_untiled_layer_width, |
310 max_untiled_layer_height); | 310 max_untiled_layer_height); |
311 | 311 |
312 settings.gpu_rasterization_msaa_sample_count = | 312 settings.gpu_rasterization_msaa_sample_count = |
313 compositor_deps->GetGpuRasterizationMSAASampleCount(); | 313 compositor_deps->GetGpuRasterizationMSAASampleCount(); |
314 settings.gpu_rasterization_forced = | 314 settings.gpu_rasterization_forced = |
315 compositor_deps->IsGpuRasterizationForced(); | 315 compositor_deps->IsGpuRasterizationForced(); |
316 settings.gpu_rasterization_enabled = | |
317 compositor_deps->IsGpuRasterizationEnabled(); | |
318 settings.async_worker_context_enabled = | 316 settings.async_worker_context_enabled = |
319 compositor_deps->IsAsyncWorkerContextEnabled(); | 317 compositor_deps->IsAsyncWorkerContextEnabled(); |
320 | 318 |
321 settings.can_use_lcd_text = compositor_deps->IsLcdTextEnabled(); | 319 settings.can_use_lcd_text = compositor_deps->IsLcdTextEnabled(); |
322 settings.use_distance_field_text = | 320 settings.use_distance_field_text = |
323 compositor_deps->IsDistanceFieldTextEnabled(); | 321 compositor_deps->IsDistanceFieldTextEnabled(); |
324 settings.use_zero_copy = compositor_deps->IsZeroCopyEnabled(); | 322 settings.use_zero_copy = compositor_deps->IsZeroCopyEnabled(); |
325 settings.use_partial_raster = compositor_deps->IsPartialRasterEnabled(); | 323 settings.use_partial_raster = compositor_deps->IsPartialRasterEnabled(); |
326 settings.enable_elastic_overscroll = | 324 settings.enable_elastic_overscroll = |
327 compositor_deps->IsElasticOverscrollEnabled(); | 325 compositor_deps->IsElasticOverscrollEnabled(); |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 GetSwitchValueAsInt( | 372 GetSwitchValueAsInt( |
375 cmd, cc::switches::kSlowDownRasterScaleFactor, kMinSlowDownScaleFactor, | 373 cmd, cc::switches::kSlowDownRasterScaleFactor, kMinSlowDownScaleFactor, |
376 kMaxSlowDownScaleFactor, | 374 kMaxSlowDownScaleFactor, |
377 &settings.initial_debug_state.slow_down_raster_scale_factor); | 375 &settings.initial_debug_state.slow_down_raster_scale_factor); |
378 } | 376 } |
379 | 377 |
380 #if defined(OS_ANDROID) | 378 #if defined(OS_ANDROID) |
381 bool using_synchronous_compositor = | 379 bool using_synchronous_compositor = |
382 GetContentClient()->UsingSynchronousCompositing(); | 380 GetContentClient()->UsingSynchronousCompositing(); |
383 | 381 |
384 // We can't use GPU rasterization on low-end devices, because the Ganesh | |
385 // cache would consume too much memory. | |
386 if (base::SysInfo::IsLowEndDevice()) | |
387 settings.gpu_rasterization_enabled = false; | |
388 settings.using_synchronous_renderer_compositor = using_synchronous_compositor; | 382 settings.using_synchronous_renderer_compositor = using_synchronous_compositor; |
389 if (using_synchronous_compositor) { | 383 if (using_synchronous_compositor) { |
390 // Android WebView uses system scrollbars, so make ours invisible. | 384 // Android WebView uses system scrollbars, so make ours invisible. |
391 // http://crbug.com/677348: This can't be done using hide_scrollbars | 385 // http://crbug.com/677348: This can't be done using hide_scrollbars |
392 // setting because supporting -webkit custom scrollbars is still desired | 386 // setting because supporting -webkit custom scrollbars is still desired |
393 // on sublayers. | 387 // on sublayers. |
394 settings.scrollbar_animator = cc::LayerTreeSettings::NO_ANIMATOR; | 388 settings.scrollbar_animator = cc::LayerTreeSettings::NO_ANIMATOR; |
395 settings.solid_color_scrollbar_color = SK_ColorTRANSPARENT; | 389 settings.solid_color_scrollbar_color = SK_ColorTRANSPARENT; |
396 } else { | 390 } else { |
397 settings.scrollbar_animator = cc::LayerTreeSettings::LINEAR_FADE; | 391 settings.scrollbar_animator = cc::LayerTreeSettings::LINEAR_FADE; |
(...skipping 732 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1130 void RenderWidgetCompositor::SetDeviceColorSpace( | 1124 void RenderWidgetCompositor::SetDeviceColorSpace( |
1131 const gfx::ColorSpace& color_space) { | 1125 const gfx::ColorSpace& color_space) { |
1132 layer_tree_host_->SetDeviceColorSpace(color_space); | 1126 layer_tree_host_->SetDeviceColorSpace(color_space); |
1133 } | 1127 } |
1134 | 1128 |
1135 void RenderWidgetCompositor::SetIsForOopif(bool is_for_oopif) { | 1129 void RenderWidgetCompositor::SetIsForOopif(bool is_for_oopif) { |
1136 is_for_oopif_ = is_for_oopif; | 1130 is_for_oopif_ = is_for_oopif; |
1137 } | 1131 } |
1138 | 1132 |
1139 } // namespace content | 1133 } // namespace content |
OLD | NEW |