summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
diff options
context:
space:
mode:
authorpiman@google.com <piman@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-05 01:18:59 +0000
committerpiman@google.com <piman@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-05 01:18:59 +0000
commitcad37d275799e1d4761c5f192b134249c34a1c77 (patch)
tree9d441b1d79ea503563f8607f03d0692da566860a /chrome/renderer
parent783ffc7355af267f7dd6881f9f2436fbcd95b2a1 (diff)
downloadchromium_src-cad37d275799e1d4761c5f192b134249c34a1c77.zip
chromium_src-cad37d275799e1d4761c5f192b134249c34a1c77.tar.gz
chromium_src-cad37d275799e1d4761c5f192b134249c34a1c77.tar.bz2
Make Graphics3D::SwapBuffers take a completion callback
BUG=none TEST=with demo_simple_vertex_shader, rate control works Review URL: http://codereview.chromium.org/5944001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70474 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer')
-rw-r--r--chrome/renderer/render_view.h3
-rw-r--r--chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc5
2 files changed, 7 insertions, 1 deletions
diff --git a/chrome/renderer/render_view.h b/chrome/renderer/render_view.h
index 7760d26..4e8d0aa 100644
--- a/chrome/renderer/render_view.h
+++ b/chrome/renderer/render_view.h
@@ -670,13 +670,14 @@ class RenderView : public RenderWidget,
// appropriate section, add it there. If not, there are some random functions
// nearer to the top you can add it to.
+ virtual void DidFlushPaint();
+
protected:
// RenderWidget overrides:
virtual void Close();
virtual void OnResize(const gfx::Size& new_size,
const gfx::Rect& resizer_rect);
virtual void DidInitiatePaint();
- virtual void DidFlushPaint();
virtual webkit::ppapi::PluginInstance* GetBitmapForOptimizedPluginPaint(
const gfx::Rect& paint_bounds,
TransportDIB** dib,
diff --git a/chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc b/chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc
index 659c8be..1be5461 100644
--- a/chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc
+++ b/chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc
@@ -116,6 +116,11 @@ bool WebGraphicsContext3DCommandBufferImpl::initialize(
renderview->routing_id(),
kWebGraphicsContext3DPerferredGLExtensions,
attribs);
+ if (context_) {
+ ggl::SetSwapBuffersCallback(
+ context_,
+ NewCallback(renderview, &RenderView::DidFlushPaint));
+ }
} else {
bool compositing_enabled = !CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDisableAcceleratedCompositing);