summaryrefslogtreecommitdiffstats
path: root/android_webview
diff options
context:
space:
mode:
authorboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-15 05:28:41 +0000
committerboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-15 05:28:41 +0000
commit2df8d41bb322115273dfa77665d9be64c277352b (patch)
treea8167decab2cd2f9bd30eff578244823605954b6 /android_webview
parentb7e33eeb41580ed766b87151cae092a2e5389711 (diff)
downloadchromium_src-2df8d41bb322115273dfa77665d9be64c277352b.zip
chromium_src-2df8d41bb322115273dfa77665d9be64c277352b.tar.gz
chromium_src-2df8d41bb322115273dfa77665d9be64c277352b.tar.bz2
gpu: Add extension check when initializing MailboxSync
And do not enable accelerated canvas in webview if extensions are missing. BUG=332146 Review URL: https://codereview.chromium.org/196653019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257295 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'android_webview')
-rw-r--r--android_webview/browser/aw_browser_main_parts.cc8
-rw-r--r--android_webview/lib/main/aw_main_delegate.cc3
2 files changed, 8 insertions, 3 deletions
diff --git a/android_webview/browser/aw_browser_main_parts.cc b/android_webview/browser/aw_browser_main_parts.cc
index c018d1e..653f8c5 100644
--- a/android_webview/browser/aw_browser_main_parts.cc
+++ b/android_webview/browser/aw_browser_main_parts.cc
@@ -8,12 +8,15 @@
#include "android_webview/browser/aw_result_codes.h"
#include "base/android/build_info.h"
#include "base/android/memory_pressure_listener_android.h"
+#include "base/command_line.h"
#include "base/files/file_path.h"
#include "base/path_service.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/common/content_client.h"
+#include "content/public/common/content_switches.h"
#include "content/public/common/result_codes.h"
#include "content/public/common/url_utils.h"
+#include "gpu/command_buffer/service/mailbox_synchronizer.h"
#include "net/android/network_change_notifier_factory_android.h"
#include "net/base/network_change_notifier.h"
#include "ui/base/l10n/l10n_util_android.h"
@@ -59,6 +62,11 @@ int AwBrowserMainParts::PreCreateThreads() {
}
void AwBrowserMainParts::PreMainMessageLoopRun() {
+ if (!gpu::gles2::MailboxSynchronizer::Initialize()) {
+ CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kDisableAccelerated2dCanvas);
+ }
+
browser_context_->PreMainMessageLoopRun();
// This is needed for WebView Classic backwards compatibility
// See crbug.com/298495
diff --git a/android_webview/lib/main/aw_main_delegate.cc b/android_webview/lib/main/aw_main_delegate.cc
index 34097b0..c11f7a0 100644
--- a/android_webview/lib/main/aw_main_delegate.cc
+++ b/android_webview/lib/main/aw_main_delegate.cc
@@ -25,7 +25,6 @@
#include "content/public/common/content_switches.h"
#include "gpu/command_buffer/client/gl_in_process_context.h"
#include "gpu/command_buffer/service/in_process_command_buffer.h"
-#include "gpu/command_buffer/service/mailbox_synchronizer.h"
#include "media/base/media_switches.h"
#include "webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h"
@@ -67,8 +66,6 @@ bool AwMainDelegate::BasicStartupComplete(int* exit_code) {
cl->AppendSwitch(switches::kDisableExperimentalWebGL);
cl->AppendSwitch(switches::kDisableSharedWorkers);
- if (!gpu::gles2::MailboxSynchronizer::Initialize())
- cl->AppendSwitch(switches::kDisableAccelerated2dCanvas);
// File system API not supported (requires some new API; internal bug 6930981)
cl->AppendSwitch(switches::kDisableFileSystem);