Cherry-pick: [Android WebView] Do not block GetOffscreenContextProviderForMainThread

Clean cherry-pick of

Original description:

Before this, we fail create a main thread shared context if there are no
webviews in hardware initialized mode. The future plan is for
accelerated 2d canvas and webgl to use a shared context with the gpu
thread service, but keep inline video using the ui thread service.

Currently only video uses main thread context for webview, so for now,
only gate context creation for main video on having a
hardware-initalized webview. This makes turning on accelerated canvas
more convenient.

BUG: 13328348

Change-Id: I1ade9f1c1b738fdbd5045fb7523958e5eb2c672d
diff --git a/content/browser/android/in_process/ b/content/browser/android/in_process/
index 5fc68f3..b0856b1 100644
--- a/content/browser/android/in_process/
+++ b/content/browser/android/in_process/
@@ -79,9 +79,8 @@
   // a compositor did successfully initialize hardware draw in the past.
   // In particular this does not guarantee that the main thread context
   // will fail creation when all compositors release hardware draw.
-  bool failed = !CanCreateMainThreadContext();
-  if (!failed &&
-      (!offscreen_context_for_main_thread_.get() ||
+  bool failed = false;
+  if ((!offscreen_context_for_main_thread_.get() ||
        offscreen_context_for_main_thread_->DestroyedOnMainThread())) {
     offscreen_context_for_main_thread_ =