Index: mojo/services/native_viewport/native_viewport_x11.cc |
diff --git a/mojo/services/native_viewport/native_viewport_x11.cc b/mojo/services/native_viewport/native_viewport_x11.cc |
index e0c23ce1202926d361a96ba7dd6b25419da350d9..80abd9272d8aa3c6c69857efb420f6beb9ab7765 100644 |
--- a/mojo/services/native_viewport/native_viewport_x11.cc |
+++ b/mojo/services/native_viewport/native_viewport_x11.cc |
@@ -10,9 +10,6 @@ |
#include "base/logging.h" |
#include "base/message_loop/message_loop.h" |
#include "base/message_loop/message_pump_x11.h" |
-#include "gpu/command_buffer/client/gl_in_process_context.h" |
-#include "gpu/command_buffer/client/gles2_implementation.h" |
-#include "ui/gfx/rect.h" |
#include "ui/gfx/x/x11_types.h" |
namespace mojo { |
@@ -22,13 +19,14 @@ class NativeViewportX11 : public NativeViewport, |
public base::MessagePumpDispatcher { |
public: |
NativeViewportX11(NativeViewportDelegate* delegate) |
- : delegate_(delegate), |
- bounds_(10, 10, 500, 500) { |
+ : NativeViewport(delegate) { |
+ bounds_ = gfx::Rect(10, 10, 500, 500); |
+ |
XDisplay* display = gfx::GetXDisplay(); |
XSetWindowAttributes swa; |
memset(&swa, 0, sizeof(swa)); |
swa.override_redirect = False; |
- window_ = XCreateWindow( |
+ widget_ = XCreateWindow( |
display, |
DefaultRootWindow(display), |
bounds_.x(), bounds_.y(), bounds_.width(), bounds_.height(), |
@@ -38,27 +36,20 @@ class NativeViewportX11 : public NativeViewport, |
CopyFromParent, // visual |
CWBackPixmap | CWOverrideRedirect, &swa); |
- base::MessagePumpX11::Current()->AddDispatcherForWindow(this, window_); |
+ base::MessagePumpX11::Current()->AddDispatcherForWindow(this, widget_); |
base::MessagePumpX11::Current()->AddDispatcherForRootWindow(this); |
- XMapWindow(display, window_); |
+ XMapWindow(display, widget_); |
XFlush(display); |
- gpu::GLInProcessContextAttribs attribs; |
- gl_context_.reset(gpu::GLInProcessContext::CreateContext( |
- false, window_, bounds_.size(), false, |
- attribs, gfx::PreferDiscreteGpu)); |
- gl_context_->SetContextLostCallback(base::Bind( |
- &NativeViewportX11::OnGLContextLost, base::Unretained(this))); |
- |
- delegate_->OnGLContextAvailable(gl_context_->GetImplementation()); |
+ OnAcceleratedWidgetAvailable(); |
} |
virtual ~NativeViewportX11() { |
base::MessagePumpX11::Current()->RemoveDispatcherForRootWindow(this); |
- base::MessagePumpX11::Current()->RemoveDispatcherForWindow(window_); |
+ base::MessagePumpX11::Current()->RemoveDispatcherForWindow(widget_); |
- XDestroyWindow(gfx::GetXDisplay(), window_); |
+ XDestroyWindow(gfx::GetXDisplay(), widget_); |
} |
private: |
@@ -73,16 +64,6 @@ class NativeViewportX11 : public NativeViewport, |
return true; |
} |
- void OnGLContextLost() { |
- gl_context_.reset(); |
- delegate_->OnGLContextLost(); |
- } |
- |
- NativeViewportDelegate* delegate_; |
- gfx::Rect bounds_; |
- XID window_; |
- scoped_ptr<gpu::GLInProcessContext> gl_context_; |
- |
DISALLOW_COPY_AND_ASSIGN(NativeViewportX11); |
}; |