Chromium Code Reviews| Index: ui/gfx/gl/gl_surface_nsview.mm |
| diff --git a/ui/gfx/gl/gl_surface_nsview.mm b/ui/gfx/gl/gl_surface_nsview.mm |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..c87486593e4788901092edc5c9ab00c1a4a360a0 |
| --- /dev/null |
| +++ b/ui/gfx/gl/gl_surface_nsview.mm |
| @@ -0,0 +1,45 @@ |
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "ui/gfx/gl/gl_surface_nsview.h" |
| + |
| +#import <AppKit/NSView.h> |
| + |
| +#include "base/basictypes.h" |
| +#include "base/logging.h" |
| +#include "base/mac/mac_util.h" |
| +#include "ui/gfx/gl/gl_bindings.h" |
| +#include "ui/gfx/gl/gl_context.h" |
| + |
| +namespace gfx { |
| + |
| +GLSurfaceNSView::GLSurfaceNSView(PluginWindowHandle view) |
| + : view_(view) { |
| +} |
| + |
| +GLSurfaceNSView::~GLSurfaceNSView() { |
| +} |
| + |
| +void GLSurfaceNSView::Destroy() { |
| +} |
| + |
| +bool GLSurfaceNSView::IsOffscreen() { |
| + return false; |
| +} |
| + |
| +bool GLSurfaceNSView::SwapBuffers() { |
| + CGLContextObj cgl_context = CGLGetCurrentContext(); |
| + CGLFlushDrawable(cgl_context); |
|
Ken Russell (switch to Gerrit)
2011/11/17 00:14:40
I don't think it's valid to assume that flushing t
dhollowa
2011/11/17 01:41:51
Done. I went with the weak pointer approach. It
|
| + return true; |
| +} |
| + |
| +gfx::Size GLSurfaceNSView::GetSize() { |
| + return gfx::Size(NSSizeToCGSize([view_ bounds].size)); |
| +} |
| + |
| +void* GLSurfaceNSView::GetHandle() { |
| + return view_; |
| +} |
| + |
| +} // namespace gfx |