summaryrefslogtreecommitdiffstats
path: root/content/renderer/renderer_webkitplatformsupport_impl.cc
diff options
context:
space:
mode:
authorboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-09 00:44:50 +0000
committerboliu@chromium.org <boliu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-09 00:44:50 +0000
commitff6a13eca84566582959943bd511f276cd3d3d1c (patch)
tree37ecbbf0a6f9db0b32e3c79a8e2256dfce7dcaa9 /content/renderer/renderer_webkitplatformsupport_impl.cc
parentda52687be7df33ab1301610ba20acde773a27e31 (diff)
downloadchromium_src-ff6a13eca84566582959943bd511f276cd3d3d1c.zip
chromium_src-ff6a13eca84566582959943bd511f276cd3d3d1c.tar.gz
chromium_src-ff6a13eca84566582959943bd511f276cd3d3d1c.tar.bz2
Hook up webgl context for in-process synchronous compositor
Create a WebGraphicsContext3DInProcessCommandBufferImpl that runs the gpu service on the non-UI thread. BUG=354841 Review URL: https://codereview.chromium.org/204013007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262573 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/renderer_webkitplatformsupport_impl.cc')
-rw-r--r--content/renderer/renderer_webkitplatformsupport_impl.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/content/renderer/renderer_webkitplatformsupport_impl.cc b/content/renderer/renderer_webkitplatformsupport_impl.cc
index bcbe74b..367bc53 100644
--- a/content/renderer/renderer_webkitplatformsupport_impl.cc
+++ b/content/renderer/renderer_webkitplatformsupport_impl.cc
@@ -78,6 +78,7 @@
#include "webkit/common/quota/quota_types.h"
#if defined(OS_ANDROID)
+#include "content/renderer/android/synchronous_compositor_factory.h"
#include "content/renderer/media/android/audio_decoder_android.h"
#endif
@@ -999,6 +1000,13 @@ RendererWebKitPlatformSupportImpl::createOffscreenGraphicsContext3D(
if (!RenderThreadImpl::current())
return NULL;
+#if defined(OS_ANDROID)
+ if (SynchronousCompositorFactory* factory =
+ SynchronousCompositorFactory::GetInstance()) {
+ return factory->CreateOffscreenGraphicsContext3D(attributes);
+ }
+#endif
+
scoped_refptr<GpuChannelHost> gpu_channel_host(
RenderThreadImpl::current()->EstablishGpuChannelSync(
CAUSE_FOR_GPU_LAUNCH_WEBGRAPHICSCONTEXT3DCOMMANDBUFFERIMPL_INITIALIZE));