| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #include "ui/gl/gl_surface.h" |    5 #include "ui/gl/gl_surface.h" | 
|    6  |    6  | 
|    7 #include <dwmapi.h> |    7 #include <dwmapi.h> | 
|    8  |    8  | 
|    9 #include "base/debug/trace_event.h" |    9 #include "base/debug/trace_event.h" | 
|   10 #include "base/logging.h" |   10 #include "base/logging.h" | 
| (...skipping 15 matching lines...) Expand all  Loading... | 
|   26 class NativeViewGLSurfaceOSMesa : public GLSurfaceOSMesa { |   26 class NativeViewGLSurfaceOSMesa : public GLSurfaceOSMesa { | 
|   27  public: |   27  public: | 
|   28   explicit NativeViewGLSurfaceOSMesa(gfx::AcceleratedWidget window); |   28   explicit NativeViewGLSurfaceOSMesa(gfx::AcceleratedWidget window); | 
|   29   virtual ~NativeViewGLSurfaceOSMesa(); |   29   virtual ~NativeViewGLSurfaceOSMesa(); | 
|   30  |   30  | 
|   31   // Implement subset of GLSurface. |   31   // Implement subset of GLSurface. | 
|   32   virtual bool Initialize() OVERRIDE; |   32   virtual bool Initialize() OVERRIDE; | 
|   33   virtual void Destroy() OVERRIDE; |   33   virtual void Destroy() OVERRIDE; | 
|   34   virtual bool IsOffscreen() OVERRIDE; |   34   virtual bool IsOffscreen() OVERRIDE; | 
|   35   virtual bool SwapBuffers() OVERRIDE; |   35   virtual bool SwapBuffers() OVERRIDE; | 
|   36   virtual std::string GetExtensions() OVERRIDE; |   36   virtual bool SupportsPostSubBuffer() OVERRIDE; | 
|   37   virtual bool PostSubBuffer(int x, int y, int width, int height) OVERRIDE; |   37   virtual bool PostSubBuffer(int x, int y, int width, int height) OVERRIDE; | 
|   38  |   38  | 
|   39  private: |   39  private: | 
|   40   gfx::AcceleratedWidget window_; |   40   gfx::AcceleratedWidget window_; | 
|   41   HDC device_context_; |   41   HDC device_context_; | 
|   42  |   42  | 
|   43   DISALLOW_COPY_AND_ASSIGN(NativeViewGLSurfaceOSMesa); |   43   DISALLOW_COPY_AND_ASSIGN(NativeViewGLSurfaceOSMesa); | 
|   44 }; |   44 }; | 
|   45  |   45  | 
|   46 class DWMVSyncProvider : public VSyncProvider { |   46 class DWMVSyncProvider : public VSyncProvider { | 
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  164                 0, 0, size.width(), size.height(), |  164                 0, 0, size.width(), size.height(), | 
|  165                 0, 0, size.width(), size.height(), |  165                 0, 0, size.width(), size.height(), | 
|  166                 GetHandle(), |  166                 GetHandle(), | 
|  167                 reinterpret_cast<BITMAPINFO*>(&info), |  167                 reinterpret_cast<BITMAPINFO*>(&info), | 
|  168                 DIB_RGB_COLORS, |  168                 DIB_RGB_COLORS, | 
|  169                 SRCCOPY); |  169                 SRCCOPY); | 
|  170  |  170  | 
|  171   return true; |  171   return true; | 
|  172 } |  172 } | 
|  173  |  173  | 
|  174 std::string NativeViewGLSurfaceOSMesa::GetExtensions() { |  174 bool NativeViewGLSurfaceOSMesa::SupportsPostSubBuffer() { | 
|  175   std::string extensions = gfx::GLSurfaceOSMesa::GetExtensions(); |  175   return true; | 
|  176   extensions += extensions.empty() ? "" : " "; |  | 
|  177   extensions += "GL_CHROMIUM_post_sub_buffer"; |  | 
|  178   return extensions; |  | 
|  179 } |  176 } | 
|  180  |  177  | 
|  181 bool NativeViewGLSurfaceOSMesa::PostSubBuffer( |  178 bool NativeViewGLSurfaceOSMesa::PostSubBuffer( | 
|  182     int x, int y, int width, int height) { |  179     int x, int y, int width, int height) { | 
|  183   DCHECK(device_context_); |  180   DCHECK(device_context_); | 
|  184  |  181  | 
|  185   gfx::Size size = GetSize(); |  182   gfx::Size size = GetSize(); | 
|  186  |  183  | 
|  187   // Note: negating the height below causes GDI to treat the bitmap data as row |  184   // Note: negating the height below causes GDI to treat the bitmap data as row | 
|  188   // 0 being at the top. |  185   // 0 being at the top. | 
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  282     } |  279     } | 
|  283     case kGLImplementationMockGL: |  280     case kGLImplementationMockGL: | 
|  284       return new GLSurfaceStub; |  281       return new GLSurfaceStub; | 
|  285     default: |  282     default: | 
|  286       NOTREACHED(); |  283       NOTREACHED(); | 
|  287       return NULL; |  284       return NULL; | 
|  288   } |  285   } | 
|  289 } |  286 } | 
|  290  |  287  | 
|  291 }  // namespace gfx |  288 }  // namespace gfx | 
| OLD | NEW |