summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/tab_contents/render_view_host_delegate_helper.cc2
-rw-r--r--chrome/common/chrome_switches.cc3
-rw-r--r--chrome/common/chrome_switches.h1
-rw-r--r--chrome/common/render_messages.cc2
-rw-r--r--webkit/glue/webpreferences.cc9
-rw-r--r--webkit/glue/webpreferences.h1
6 files changed, 15 insertions, 3 deletions
diff --git a/chrome/browser/tab_contents/render_view_host_delegate_helper.cc b/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
index 568ae4cf..84f684d 100644
--- a/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
+++ b/chrome/browser/tab_contents/render_view_host_delegate_helper.cc
@@ -291,6 +291,8 @@ WebPreferences RenderViewHostDelegateHelper::GetWebkitPrefs(
command_line.HasSwitch(switches::kEnableAccelerated2dCanvas);
web_prefs.accelerated_layers_enabled =
command_line.HasSwitch(switches::kEnableAcceleratedLayers);
+ web_prefs.accelerated_plugins_enabled =
+ command_line.HasSwitch(switches::kEnableAcceleratedPlugins);
web_prefs.accelerated_video_enabled =
!command_line.HasSwitch(switches::kDisableAcceleratedVideo);
web_prefs.memory_info_enabled =
diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc
index c69408e..3f55ee9 100644
--- a/chrome/common/chrome_switches.cc
+++ b/chrome/common/chrome_switches.cc
@@ -412,6 +412,9 @@ const char kEnableAccelerated2dCanvas[] = "enable-accelerated-2d-canvas";
// Enables the hardware acceleration of 3D CSS and animation.
const char kEnableAcceleratedLayers[] = "enable-accelerated-layers";
+// Enables the hardware acceleration of plugins.
+const char kEnableAcceleratedPlugins[] = "enable-accelerated-plugins";
+
// Enables WebKit accessibility within the renderer process.
const char kEnableAccessibility[] = "enable-accessibility";
diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h
index 3e5e853..2b23e3e 100644
--- a/chrome/common/chrome_switches.h
+++ b/chrome/common/chrome_switches.h
@@ -124,6 +124,7 @@ extern const char kDomAutomationController[];
extern const char kDumpHistogramsOnExit[];
extern const char kEnableAccelerated2dCanvas[];
extern const char kEnableAcceleratedLayers[];
+extern const char kEnableAcceleratedPlugins[];
extern const char kEnableAccessibility[];
extern const char kEnableAeroPeekTabs[];
extern const char kEnableAuthNegotiatePort[];
diff --git a/chrome/common/render_messages.cc b/chrome/common/render_messages.cc
index 69b73be..8a1f0d8 100644
--- a/chrome/common/render_messages.cc
+++ b/chrome/common/render_messages.cc
@@ -728,6 +728,7 @@ void ParamTraits<WebPreferences>::Write(Message* m, const param_type& p) {
WriteParam(m, p.show_composited_layer_borders);
WriteParam(m, p.accelerated_compositing_enabled);
WriteParam(m, p.accelerated_2d_canvas_enabled);
+ WriteParam(m, p.accelerated_plugins_enabled);
WriteParam(m, p.accelerated_layers_enabled);
WriteParam(m, p.accelerated_video_enabled);
WriteParam(m, p.memory_info_enabled);
@@ -780,6 +781,7 @@ bool ParamTraits<WebPreferences>::Read(const Message* m, void** iter,
ReadParam(m, iter, &p->show_composited_layer_borders) &&
ReadParam(m, iter, &p->accelerated_compositing_enabled) &&
ReadParam(m, iter, &p->accelerated_2d_canvas_enabled) &&
+ ReadParam(m, iter, &p->accelerated_plugins_enabled) &&
ReadParam(m, iter, &p->accelerated_layers_enabled) &&
ReadParam(m, iter, &p->accelerated_video_enabled) &&
ReadParam(m, iter, &p->memory_info_enabled);
diff --git a/webkit/glue/webpreferences.cc b/webkit/glue/webpreferences.cc
index 02092de..a802350 100644
--- a/webkit/glue/webpreferences.cc
+++ b/webkit/glue/webpreferences.cc
@@ -66,6 +66,7 @@ WebPreferences::WebPreferences()
accelerated_layers_enabled(false),
accelerated_video_enabled(false),
accelerated_2d_canvas_enabled(false),
+ accelerated_plugins_enabled(false),
memory_info_enabled(false) {
}
@@ -157,16 +158,18 @@ void WebPreferences::Apply(WebView* web_view) const {
settings->setAccelerated2dCanvasEnabled(accelerated_2d_canvas_enabled);
// Enabling accelerated layers from the command line enabled accelerated
- // 3D CSS, Video, Plugins, and Animations.
+ // 3D CSS, Video, and Animations.
settings->setAcceleratedCompositingFor3DTransformsEnabled(
accelerated_layers_enabled);
settings->setAcceleratedCompositingForVideoEnabled(
accelerated_video_enabled);
- settings->setAcceleratedCompositingForPluginsEnabled(
- accelerated_layers_enabled);
settings->setAcceleratedCompositingForAnimationEnabled(
accelerated_layers_enabled);
+ // Enabling accelerated plugins if specified from the command line.
+ settings->setAcceleratedCompositingForPluginsEnabled(
+ accelerated_plugins_enabled);
+
// WebGL and accelerated 2D canvas are always gpu composited.
settings->setAcceleratedCompositingForCanvasEnabled(
enable_webgl || accelerated_2d_canvas_enabled);
diff --git a/webkit/glue/webpreferences.h b/webkit/glue/webpreferences.h
index b14d323..f6e000d 100644
--- a/webkit/glue/webpreferences.h
+++ b/webkit/glue/webpreferences.h
@@ -72,6 +72,7 @@ struct WebPreferences {
bool accelerated_layers_enabled;
bool accelerated_video_enabled;
bool accelerated_2d_canvas_enabled;
+ bool accelerated_plugins_enabled;
bool memory_info_enabled;
// We try to keep the default values the same as the default values in