From 01917bd769d01d583eed74ed29bb6f23981a878e Mon Sep 17 00:00:00 2001 From: "jamesr@chromium.org" Date: Fri, 3 Dec 2010 02:05:47 +0000 Subject: Turn GPU accelerated features (WebGL, compositing, accelerated 2d canvas) off for background pages We don't support turning compositing on for a background page currently and it doesn't seem necessary. This disables all GPU-requiring features for background pages for now. When we have valid use cases we can re-enable features as needed. BUG=64512 TEST=load extension that uses 3d CSS in a background page and verify that there is no browser crash or GPU process created on startup Review URL: http://codereview.chromium.org/5369008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68130 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browser/extensions/extension_browsertests_misc.cc | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'chrome/browser/extensions/extension_browsertests_misc.cc') diff --git a/chrome/browser/extensions/extension_browsertests_misc.cc b/chrome/browser/extensions/extension_browsertests_misc.cc index d9828a1..f554d11 100644 --- a/chrome/browser/extensions/extension_browsertests_misc.cc +++ b/chrome/browser/extensions/extension_browsertests_misc.cc @@ -173,6 +173,23 @@ IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, TabContents) { EXPECT_TRUE(result); } +// Tests that GPU-related WebKit preferences are set for extension background +// pages. See http://crbug.com/64512. +IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, WebKitPrefsBackgroundPage) { + ASSERT_TRUE(LoadExtension( + test_data_dir_.AppendASCII("good").AppendASCII("Extensions") + .AppendASCII("behllobkkfkfnphdnhnkndlbkcpglgmj") + .AppendASCII("1.0.0.0"))); + + ExtensionProcessManager* manager = + browser()->profile()->GetExtensionProcessManager(); + ExtensionHost* host = FindHostWithPath(manager, "/backgroundpage.html", 1); + WebPreferences prefs = host->GetWebkitPrefs(); + ASSERT_FALSE(prefs.experimental_webgl_enabled); + ASSERT_FALSE(prefs.accelerated_compositing_enabled); + ASSERT_FALSE(prefs.accelerated_2d_canvas_enabled); +} + // Tests that we can load page actions in the Omnibox. IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, PageAction) { ASSERT_TRUE(test_server()->Start()); -- cgit v1.1