Index: content/browser/renderer_host/compositor_impl_android.cc |
diff --git a/content/browser/renderer_host/compositor_impl_android.cc b/content/browser/renderer_host/compositor_impl_android.cc |
index c5560e61684d5a47b23ab6b2013888845634e40d..f3c460618e65928141307d20ae60d2f84ecad109 100644 |
--- a/content/browser/renderer_host/compositor_impl_android.cc |
+++ b/content/browser/renderer_host/compositor_impl_android.cc |
@@ -46,7 +46,9 @@ namespace { |
class DirectOutputSurface : public cc::OutputSurface { |
public: |
DirectOutputSurface(scoped_ptr<WebKit::WebGraphicsContext3D> context3d) |
- : cc::OutputSurface(context3d.Pass()) {} |
+ : cc::OutputSurface(context3d.Pass()) { |
+ capabilities_.adjust_deadline_for_parent = false; |
+ } |
virtual void Reshape(gfx::Size size, float scale_factor) OVERRIDE { |
surface_size_ = size; |
@@ -56,6 +58,15 @@ class DirectOutputSurface : public cc::OutputSurface { |
} |
}; |
+// Used to override capabilities_.adjust_deadline_for_parent to false |
+class OutputSurfaceWithoutParent : public cc::OutputSurface { |
+ public: |
+ OutputSurfaceWithoutParent(scoped_ptr<WebKit::WebGraphicsContext3D> context3d) |
+ : cc::OutputSurface(context3d.Pass()) { |
+ capabilities_.adjust_deadline_for_parent = false; |
+ } |
+}; |
+ |
static bool g_initialized = false; |
static base::Thread* g_impl_thread = NULL; |
static bool g_use_direct_gl = false; |
@@ -365,8 +376,9 @@ scoped_ptr<cc::OutputSurface> CompositorImpl::CreateOutputSurface() { |
LOG(ERROR) << "Failed to create 3D context for compositor."; |
return scoped_ptr<cc::OutputSurface>(); |
} |
- return make_scoped_ptr(new cc::OutputSurface( |
- context.PassAs<WebKit::WebGraphicsContext3D>())); |
+ return scoped_ptr<cc::OutputSurface>( |
+ new OutputSurfaceWithoutParent( |
+ context.PassAs<WebKit::WebGraphicsContext3D>())); |
} |
} |