Add a command-line flag to disable canvas antialiasing. This will be used to...

Add a command-line flag to disable canvas antialiasing.  This will be used to characterize performance issues on Android.

BUG=168671


Review URL: https://chromiumcodereview.appspot.com/11827002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175784 0039d316-1c4b-4281-b951-d872f2087c98
parent 00d30371
...@@ -503,6 +503,8 @@ WebPreferences WebContentsImpl::GetWebkitPrefs(RenderViewHost* rvh, ...@@ -503,6 +503,8 @@ WebPreferences WebContentsImpl::GetWebkitPrefs(RenderViewHost* rvh,
!command_line.HasSwitch(switches::kDisableAccelerated2dCanvas); !command_line.HasSwitch(switches::kDisableAccelerated2dCanvas);
prefs.deferred_2d_canvas_enabled = prefs.deferred_2d_canvas_enabled =
!command_line.HasSwitch(switches::kDisableDeferred2dCanvas); !command_line.HasSwitch(switches::kDisableDeferred2dCanvas);
prefs.antialiased_2d_canvas_disabled =
command_line.HasSwitch(switches::kDisable2dCanvasAntialiasing);
prefs.accelerated_painting_enabled = prefs.accelerated_painting_enabled =
GpuProcessHost::gpu_enabled() && GpuProcessHost::gpu_enabled() &&
command_line.HasSwitch(switches::kEnableAcceleratedPainting); command_line.HasSwitch(switches::kEnableAcceleratedPainting);
......
...@@ -158,6 +158,7 @@ IPC_STRUCT_TRAITS_BEGIN(webkit_glue::WebPreferences) ...@@ -158,6 +158,7 @@ IPC_STRUCT_TRAITS_BEGIN(webkit_glue::WebPreferences)
IPC_STRUCT_TRAITS_MEMBER(fixed_position_compositing_enabled) IPC_STRUCT_TRAITS_MEMBER(fixed_position_compositing_enabled)
IPC_STRUCT_TRAITS_MEMBER(accelerated_2d_canvas_enabled) IPC_STRUCT_TRAITS_MEMBER(accelerated_2d_canvas_enabled)
IPC_STRUCT_TRAITS_MEMBER(deferred_2d_canvas_enabled) IPC_STRUCT_TRAITS_MEMBER(deferred_2d_canvas_enabled)
IPC_STRUCT_TRAITS_MEMBER(antialiased_2d_canvas_disabled)
IPC_STRUCT_TRAITS_MEMBER(accelerated_painting_enabled) IPC_STRUCT_TRAITS_MEMBER(accelerated_painting_enabled)
IPC_STRUCT_TRAITS_MEMBER(accelerated_filters_enabled) IPC_STRUCT_TRAITS_MEMBER(accelerated_filters_enabled)
IPC_STRUCT_TRAITS_MEMBER(gesture_tap_highlight_enabled) IPC_STRUCT_TRAITS_MEMBER(gesture_tap_highlight_enabled)
......
...@@ -49,6 +49,9 @@ const char kDisable3DAPIs[] = "disable-3d-apis"; ...@@ -49,6 +49,9 @@ const char kDisable3DAPIs[] = "disable-3d-apis";
// Disable gpu-accelerated 2d canvas. // Disable gpu-accelerated 2d canvas.
const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas"; const char kDisableAccelerated2dCanvas[] = "disable-accelerated-2d-canvas";
// Disable antialiasing on 2d canvas.
const char kDisable2dCanvasAntialiasing[] = "disable-canvas-aa";
// Disables accelerated compositing. // Disables accelerated compositing.
const char kDisableAcceleratedCompositing[] = "disable-accelerated-compositing"; const char kDisableAcceleratedCompositing[] = "disable-accelerated-compositing";
......
...@@ -23,6 +23,7 @@ CONTENT_EXPORT extern const char kBrowserSubprocessPath[]; ...@@ -23,6 +23,7 @@ CONTENT_EXPORT extern const char kBrowserSubprocessPath[];
// TODO(jam): this doesn't belong in content. // TODO(jam): this doesn't belong in content.
CONTENT_EXPORT extern const char kChromeFrame[]; CONTENT_EXPORT extern const char kChromeFrame[];
CONTENT_EXPORT extern const char kCrashOnGpuHang[]; CONTENT_EXPORT extern const char kCrashOnGpuHang[];
CONTENT_EXPORT extern const char kDisable2dCanvasAntialiasing[];
CONTENT_EXPORT extern const char kDisable3DAPIs[]; CONTENT_EXPORT extern const char kDisable3DAPIs[];
CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[]; CONTENT_EXPORT extern const char kDisableAccelerated2dCanvas[];
CONTENT_EXPORT extern const char kDisableAcceleratedCompositing[]; CONTENT_EXPORT extern const char kDisableAcceleratedCompositing[];
......
...@@ -98,6 +98,7 @@ WebPreferences::WebPreferences() ...@@ -98,6 +98,7 @@ WebPreferences::WebPreferences()
accelerated_compositing_for_video_enabled(false), accelerated_compositing_for_video_enabled(false),
accelerated_2d_canvas_enabled(false), accelerated_2d_canvas_enabled(false),
deferred_2d_canvas_enabled(false), deferred_2d_canvas_enabled(false),
antialiased_2d_canvas_disabled(false),
accelerated_painting_enabled(false), accelerated_painting_enabled(false),
accelerated_filters_enabled(false), accelerated_filters_enabled(false),
gesture_tap_highlight_enabled(false), gesture_tap_highlight_enabled(false),
...@@ -393,6 +394,9 @@ void WebPreferences::Apply(WebView* web_view) const { ...@@ -393,6 +394,9 @@ void WebPreferences::Apply(WebView* web_view) const {
// Enable deferred 2d canvas if requested on the command line. // Enable deferred 2d canvas if requested on the command line.
settings->setDeferred2dCanvasEnabled(deferred_2d_canvas_enabled); settings->setDeferred2dCanvasEnabled(deferred_2d_canvas_enabled);
// Disable antialiasing for 2d canvas if requested on the command line.
settings->setAntialiased2dCanvasEnabled(!antialiased_2d_canvas_disabled);
// Enable gpu-accelerated painting if requested on the command line. // Enable gpu-accelerated painting if requested on the command line.
settings->setAcceleratedPaintingEnabled(accelerated_painting_enabled); settings->setAcceleratedPaintingEnabled(accelerated_painting_enabled);
......
...@@ -121,6 +121,7 @@ struct WEBKIT_GLUE_EXPORT WebPreferences { ...@@ -121,6 +121,7 @@ struct WEBKIT_GLUE_EXPORT WebPreferences {
bool accelerated_compositing_for_video_enabled; bool accelerated_compositing_for_video_enabled;
bool accelerated_2d_canvas_enabled; bool accelerated_2d_canvas_enabled;
bool deferred_2d_canvas_enabled; bool deferred_2d_canvas_enabled;
bool antialiased_2d_canvas_disabled;
bool accelerated_painting_enabled; bool accelerated_painting_enabled;
bool accelerated_filters_enabled; bool accelerated_filters_enabled;
bool gesture_tap_highlight_enabled; bool gesture_tap_highlight_enabled;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment