Index: mojo/services/view_manager/window_tree_host_impl.cc |
diff --git a/mojo/services/view_manager/window_tree_host_impl.cc b/mojo/services/view_manager/window_tree_host_impl.cc |
deleted file mode 100644 |
index 805018bb1c3a470a4a1daaa018048ebbed1dfe1b..0000000000000000000000000000000000000000 |
--- a/mojo/services/view_manager/window_tree_host_impl.cc |
+++ /dev/null |
@@ -1,202 +0,0 @@ |
-// Copyright 2013 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 "mojo/public/c/gles2/gles2.h" |
-#include "mojo/services/public/cpp/geometry/geometry_type_converters.h" |
-#include "mojo/services/public/cpp/input_events/input_events_type_converters.h" |
-#include "mojo/services/view_manager/connection_manager.h" |
-#include "mojo/services/view_manager/context_factory_impl.h" |
-#include "mojo/services/view_manager/window_tree_host_impl.h" |
-#include "ui/aura/env.h" |
-#include "ui/aura/layout_manager.h" |
-#include "ui/aura/window.h" |
-#include "ui/aura/window_event_dispatcher.h" |
-#include "ui/compositor/compositor.h" |
-#include "ui/events/event.h" |
-#include "ui/events/event_constants.h" |
-#include "ui/gfx/geometry/insets.h" |
-#include "ui/gfx/geometry/rect.h" |
- |
-namespace mojo { |
-namespace service { |
- |
-// TODO(sky): nuke this. It shouldn't be static. |
-// static |
-ContextFactoryImpl* WindowTreeHostImpl::context_factory_ = NULL; |
- |
-//////////////////////////////////////////////////////////////////////////////// |
-// RootLayoutManager, layout management for the root window's (one) child |
- |
-class RootLayoutManager : public aura::LayoutManager { |
- public: |
- RootLayoutManager() : child_(NULL) {} |
- |
- // Overridden from aura::LayoutManager |
- virtual void OnWindowResized() OVERRIDE; |
- virtual void OnWindowAddedToLayout(aura::Window* child) OVERRIDE; |
- virtual void OnWillRemoveWindowFromLayout(aura::Window* child) OVERRIDE {} |
- virtual void OnWindowRemovedFromLayout(aura::Window* child) OVERRIDE {} |
- virtual void OnChildWindowVisibilityChanged(aura::Window* child, |
- bool visible) OVERRIDE {} |
- virtual void SetChildBounds(aura::Window* child, |
- const gfx::Rect& requested_bounds) OVERRIDE; |
- private: |
- aura::Window* child_; |
- |
- DISALLOW_COPY_AND_ASSIGN(RootLayoutManager); |
-}; |
- |
-void RootLayoutManager::OnWindowResized() { |
- if (child_) |
- child_->SetBounds(gfx::Rect(child_->parent()->bounds().size())); |
-} |
- |
-void RootLayoutManager::OnWindowAddedToLayout(aura::Window* child) { |
- DCHECK(!child_); |
- child_ = child; |
-} |
- |
-void RootLayoutManager::SetChildBounds(aura::Window* child, |
- const gfx::Rect& requested_bounds) { |
- SetChildBoundsDirect(child, gfx::Rect(requested_bounds.size())); |
-} |
- |
-//////////////////////////////////////////////////////////////////////////////// |
-// WindowTreeHostImpl, public: |
- |
-WindowTreeHostImpl::WindowTreeHostImpl( |
- NativeViewportPtr viewport, |
- GpuPtr gpu_service, |
- const gfx::Rect& bounds, |
- const Callback<void()>& compositor_created_callback, |
- const Callback<void()>& native_viewport_closed_callback, |
- const Callback<void(EventPtr)>& event_received_callback) |
- : native_viewport_(viewport.Pass()), |
- gpu_service_(gpu_service.Pass()), |
- widget_(gfx::kNullAcceleratedWidget), |
- compositor_created_callback_(compositor_created_callback), |
- native_viewport_closed_callback_(native_viewport_closed_callback), |
- event_received_callback_(event_received_callback), |
- bounds_(bounds) { |
- native_viewport_.set_client(this); |
- native_viewport_->Create(Rect::From(bounds)); |
- native_viewport_->Show(); |
- |
- window()->SetLayoutManager(new RootLayoutManager()); |
-} |
- |
-WindowTreeHostImpl::~WindowTreeHostImpl() { |
- DestroyCompositor(); |
- DestroyDispatcher(); |
- delete context_factory_; |
- context_factory_ = NULL; |
-} |
- |
-//////////////////////////////////////////////////////////////////////////////// |
-// WindowTreeHostImpl, aura::WindowTreeHost implementation: |
- |
-ui::EventSource* WindowTreeHostImpl::GetEventSource() { |
- return this; |
-} |
- |
-gfx::AcceleratedWidget WindowTreeHostImpl::GetAcceleratedWidget() { |
- return widget_; |
-} |
- |
-void WindowTreeHostImpl::Show() { |
- window()->Show(); |
-} |
- |
-void WindowTreeHostImpl::Hide() { |
- native_viewport_->Hide(); |
- window()->Hide(); |
-} |
- |
-gfx::Rect WindowTreeHostImpl::GetBounds() const { |
- return bounds_; |
-} |
- |
-void WindowTreeHostImpl::SetBounds(const gfx::Rect& bounds) { |
- native_viewport_->SetBounds(Rect::From(bounds)); |
-} |
- |
-gfx::Point WindowTreeHostImpl::GetLocationOnNativeScreen() const { |
- return gfx::Point(0, 0); |
-} |
- |
-void WindowTreeHostImpl::SetCapture() { |
- NOTIMPLEMENTED(); |
-} |
- |
-void WindowTreeHostImpl::ReleaseCapture() { |
- NOTIMPLEMENTED(); |
-} |
- |
-void WindowTreeHostImpl::PostNativeEvent( |
- const base::NativeEvent& native_event) { |
- NOTIMPLEMENTED(); |
-} |
- |
-void WindowTreeHostImpl::SetCursorNative(gfx::NativeCursor cursor) { |
- NOTIMPLEMENTED(); |
-} |
- |
-void WindowTreeHostImpl::MoveCursorToNative(const gfx::Point& location) { |
- NOTIMPLEMENTED(); |
-} |
- |
-void WindowTreeHostImpl::OnCursorVisibilityChangedNative(bool show) { |
- NOTIMPLEMENTED(); |
-} |
- |
-//////////////////////////////////////////////////////////////////////////////// |
-// WindowTreeHostImpl, ui::EventSource implementation: |
- |
-ui::EventProcessor* WindowTreeHostImpl::GetEventProcessor() { |
- return dispatcher(); |
-} |
- |
-//////////////////////////////////////////////////////////////////////////////// |
-// WindowTreeHostImpl, NativeViewportClient implementation: |
- |
-void WindowTreeHostImpl::OnCreated(uint64_t native_viewport_id) { |
- CommandBufferPtr cb; |
- // TODO(jamesr): Output to a surface instead. |
- gpu_service_->CreateOnscreenGLES2Context( |
- native_viewport_id, Size::From(bounds_.size()), Get(&cb)); |
- widget_ = bit_cast<gfx::AcceleratedWidget>( |
- static_cast<uintptr_t>(native_viewport_id)); |
- |
- // The ContextFactory must exist before any Compositors are created. |
- if (context_factory_) { |
- delete context_factory_; |
- context_factory_ = NULL; |
- } |
- context_factory_ = new ContextFactoryImpl(cb.PassMessagePipe()); |
- aura::Env::GetInstance()->set_context_factory(context_factory_); |
- |
- CreateCompositor(gfx::kNullAcceleratedWidget); |
- compositor_created_callback_.Run(); |
-} |
- |
-void WindowTreeHostImpl::OnBoundsChanged(RectPtr bounds) { |
- bounds_ = bounds.To<gfx::Rect>(); |
- if (context_factory_) |
- OnHostResized(bounds_.size()); |
-} |
- |
-void WindowTreeHostImpl::OnDestroyed() { |
- DestroyCompositor(); |
- native_viewport_closed_callback_.Run(); |
- // TODO(beng): quit the message loop once we are on our own thread. |
-} |
- |
-void WindowTreeHostImpl::OnEvent(EventPtr event, |
- const mojo::Callback<void()>& callback) { |
- event_received_callback_.Run(event.Pass()); |
- callback.Run(); |
-}; |
- |
-} // namespace service |
-} // namespace mojo |