Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(84)

Side by Side Diff: content/renderer/gpu/render_widget_compositor.cc

Issue 119493005: Expose a low-end device mode override flags for non-android OSs as well (Closed) Base URL: https://git.chromium.org/chromium/src.git@master
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #if defined(OS_ANDROID)
11 #include "base/android/sys_utils.h"
12 #endif
13
14 #include "base/command_line.h" 10 #include "base/command_line.h"
15 #include "base/logging.h" 11 #include "base/logging.h"
16 #include "base/strings/string_number_conversions.h" 12 #include "base/strings/string_number_conversions.h"
17 #include "base/synchronization/lock.h" 13 #include "base/synchronization/lock.h"
14 #include "base/sys_utils.h"
18 #include "base/time/time.h" 15 #include "base/time/time.h"
19 #include "base/values.h" 16 #include "base/values.h"
20 #include "cc/base/latency_info_swap_promise.h" 17 #include "cc/base/latency_info_swap_promise.h"
21 #include "cc/base/latency_info_swap_promise_monitor.h" 18 #include "cc/base/latency_info_swap_promise_monitor.h"
22 #include "cc/base/switches.h" 19 #include "cc/base/switches.h"
23 #include "cc/debug/layer_tree_debug_state.h" 20 #include "cc/debug/layer_tree_debug_state.h"
24 #include "cc/debug/micro_benchmark.h" 21 #include "cc/debug/micro_benchmark.h"
25 #include "cc/layers/layer.h" 22 #include "cc/layers/layer.h"
26 #include "cc/trees/layer_tree_host.h" 23 #include "cc/trees/layer_tree_host.h"
27 #include "content/common/gpu/client/context_provider_command_buffer.h" 24 #include "content/common/gpu/client/context_provider_command_buffer.h"
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 ? SK_ColorTRANSPARENT 258 ? SK_ColorTRANSPARENT
262 : SkColorSetARGB(128, 128, 128, 128); 259 : SkColorSetARGB(128, 128, 128, 128);
263 settings.highp_threshold_min = 2048; 260 settings.highp_threshold_min = 2048;
264 // Android WebView handles root layer flings itself. 261 // Android WebView handles root layer flings itself.
265 settings.ignore_root_layer_flings = 262 settings.ignore_root_layer_flings =
266 widget->UsingSynchronousRendererCompositor(); 263 widget->UsingSynchronousRendererCompositor();
267 settings.always_overscroll = widget->UsingSynchronousRendererCompositor(); 264 settings.always_overscroll = widget->UsingSynchronousRendererCompositor();
268 // RGBA_4444 textures are only enabled for low end devices 265 // RGBA_4444 textures are only enabled for low end devices
269 // and are disabled for Android WebView as it doesn't support the format. 266 // and are disabled for Android WebView as it doesn't support the format.
270 settings.use_rgba_4444_textures = 267 settings.use_rgba_4444_textures =
271 base::android::SysUtils::IsLowEndDevice() && 268 base::SysUtils::IsLowEndDevice() &&
272 !widget->UsingSynchronousRendererCompositor() && 269 !widget->UsingSynchronousRendererCompositor() &&
273 !cmd->HasSwitch(cc::switches::kDisable4444Textures); 270 !cmd->HasSwitch(cc::switches::kDisable4444Textures);
274 #elif !defined(OS_MACOSX) 271 #elif !defined(OS_MACOSX)
275 if (cmd->HasSwitch(switches::kEnableOverlayScrollbars)) { 272 if (cmd->HasSwitch(switches::kEnableOverlayScrollbars)) {
276 settings.scrollbar_animator = cc::LayerTreeSettings::Thinning; 273 settings.scrollbar_animator = cc::LayerTreeSettings::Thinning;
277 } 274 }
278 if (cmd->HasSwitch(cc::switches::kEnablePinchVirtualViewport) || 275 if (cmd->HasSwitch(cc::switches::kEnablePinchVirtualViewport) ||
279 cmd->HasSwitch(switches::kEnableOverlayScrollbars)) { 276 cmd->HasSwitch(switches::kEnableOverlayScrollbars)) {
280 settings.solid_color_scrollbar_color = SkColorSetARGB(128, 128, 128, 128); 277 settings.solid_color_scrollbar_color = SkColorSetARGB(128, 128, 128, 128);
281 } 278 }
(...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after
636 widget_->OnSwapBuffersAborted(); 633 widget_->OnSwapBuffersAborted();
637 } 634 }
638 635
639 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { 636 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() {
640 cc::ContextProvider* provider = 637 cc::ContextProvider* provider =
641 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); 638 RenderThreadImpl::current()->SharedMainThreadContextProvider().get();
642 provider->Context3d()->rateLimitOffscreenContextCHROMIUM(); 639 provider->Context3d()->rateLimitOffscreenContextCHROMIUM();
643 } 640 }
644 641
645 } // namespace content 642 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698