Index: app/gfx/gl/gl_context_linux.cc |
diff --git a/app/gfx/gl/gl_context_linux.cc b/app/gfx/gl/gl_context_linux.cc |
index fd0b7b984b1d06bfc55b95602f4b655a63afeee8..bed9e18927adc449ec680907318fb955706f46bc 100644 |
--- a/app/gfx/gl/gl_context_linux.cc |
+++ b/app/gfx/gl/gl_context_linux.cc |
@@ -47,6 +47,7 @@ class ViewGLContext : public GLContext { |
virtual bool IsOffscreen(); |
virtual bool SwapBuffers(); |
virtual gfx::Size GetSize(); |
+ virtual void SetSize(gfx::Size size); |
virtual void* GetHandle(); |
virtual void SetSwapInterval(int interval); |
@@ -315,6 +316,14 @@ gfx::Size ViewGLContext::GetSize() { |
return gfx::Size(attributes.width, attributes.height); |
} |
+void ViewGLContext::SetSize(gfx::Size size) { |
+ // Need to flush the GL commands in flight so that the resize operation |
+ // doesn't damage the backbuffer. |
+ glFinish(); |
+ |
+ GLContext::SetSize(size); |
+} |
+ |
void* ViewGLContext::GetHandle() { |
return context_; |
} |