| Index: ui/views/mus/window_tree_host_mus.cc
|
| diff --git a/ui/views/mus/window_tree_host_mus.cc b/ui/views/mus/window_tree_host_mus.cc
|
| index 61c6f4670e47047b292f5e16424dfeb3f987f791..fa69ac3a267680642560f01453ca494c46528c01 100644
|
| --- a/ui/views/mus/window_tree_host_mus.cc
|
| +++ b/ui/views/mus/window_tree_host_mus.cc
|
| @@ -4,159 +4,16 @@
|
|
|
| #include "ui/views/mus/window_tree_host_mus.h"
|
|
|
| -#include "components/mus/public/cpp/property_type_converters.h"
|
| -#include "components/mus/public/cpp/window_observer.h"
|
| -#include "components/mus/public/cpp/window_property.h"
|
| -#include "components/mus/public/cpp/window_tree_connection.h"
|
| -#include "components/mus/public/interfaces/window_manager.mojom.h"
|
| #include "mojo/application/public/interfaces/shell.mojom.h"
|
| -#include "mojo/converters/geometry/geometry_type_converters.h"
|
| -#include "mojo/converters/input_events/input_events_type_converters.h"
|
| #include "ui/aura/env.h"
|
| #include "ui/aura/window.h"
|
| -#include "ui/aura/window_event_dispatcher.h"
|
| #include "ui/events/event.h"
|
| -#include "ui/events/event_constants.h"
|
| -#include "ui/platform_window/platform_window.h"
|
| -#include "ui/platform_window/platform_window_delegate.h"
|
| #include "ui/views/mus/input_method_mus.h"
|
| #include "ui/views/mus/native_widget_mus.h"
|
| +#include "ui/views/mus/platform_window_mus.h"
|
| #include "ui/views/mus/surface_context_factory.h"
|
| -#include "ui/views/mus/window_manager_connection.h"
|
|
|
| namespace views {
|
| -namespace {
|
| -
|
| -void WindowManagerCallback(mus::mojom::WindowManagerErrorCode error_code) {}
|
| -
|
| -class PlatformWindowMus : public ui::PlatformWindow,
|
| - public mus::WindowObserver {
|
| - public:
|
| - PlatformWindowMus(ui::PlatformWindowDelegate* delegate,
|
| - mus::Window* mus_window)
|
| - : delegate_(delegate),
|
| - mus_window_(mus_window),
|
| - show_state_(mus::mojom::SHOW_STATE_RESTORED) {
|
| - DCHECK(delegate_);
|
| - DCHECK(mus_window_);
|
| - mus_window_->AddObserver(this);
|
| -
|
| - delegate_->OnAcceleratedWidgetAvailable(gfx::kNullAcceleratedWidget,
|
| - mus_window_->viewport_metrics().device_pixel_ratio);
|
| - }
|
| -
|
| - ~PlatformWindowMus() override {
|
| - if (!mus_window_)
|
| - return;
|
| - mus_window_->RemoveObserver(this);
|
| - mus_window_->Destroy();
|
| - }
|
| -
|
| - private:
|
| - void SetShowState(mus::mojom::ShowState show_state) {
|
| - WindowManagerConnection::Get()->window_manager()->SetShowState(
|
| - mus_window_->id(), show_state, base::Bind(&WindowManagerCallback));
|
| - }
|
| -
|
| - // ui::PlatformWindow:
|
| - void Show() override { mus_window_->SetVisible(true); }
|
| - void Hide() override { mus_window_->SetVisible(false); }
|
| - void Close() override { NOTIMPLEMENTED(); }
|
| -
|
| - void SetBounds(const gfx::Rect& bounds) override {
|
| - mus_window_->SetBounds(bounds);
|
| - }
|
| - gfx::Rect GetBounds() override { return mus_window_->bounds(); }
|
| - void SetTitle(const base::string16& title) override { NOTIMPLEMENTED(); }
|
| - void SetCapture() override { NOTIMPLEMENTED(); }
|
| - void ReleaseCapture() override { NOTIMPLEMENTED(); }
|
| - void ToggleFullscreen() override { NOTIMPLEMENTED(); }
|
| - void Maximize() override {
|
| - SetShowState(mus::mojom::SHOW_STATE_MAXIMIZED);
|
| - }
|
| - void Minimize() override {
|
| - SetShowState(mus::mojom::SHOW_STATE_MINIMIZED);
|
| - }
|
| - void Restore() override {
|
| - SetShowState(mus::mojom::SHOW_STATE_RESTORED);
|
| - }
|
| - void SetCursor(ui::PlatformCursor cursor) override { NOTIMPLEMENTED(); }
|
| - void MoveCursorTo(const gfx::Point& location) override { NOTIMPLEMENTED(); }
|
| - void ConfineCursorToBounds(const gfx::Rect& bounds) override {
|
| - NOTIMPLEMENTED();
|
| - }
|
| - ui::PlatformImeController* GetPlatformImeController() override {
|
| - return nullptr;
|
| - }
|
| -
|
| - // mus::WindowObserver:
|
| - void OnWindowDestroyed(mus::Window* window) override {
|
| - DCHECK_EQ(mus_window_, window);
|
| - delegate_->OnClosed();
|
| - mus_window_ = nullptr;
|
| - }
|
| -
|
| - void OnWindowBoundsChanged(mus::Window* window,
|
| - const gfx::Rect& old_bounds,
|
| - const gfx::Rect& new_bounds) override {
|
| - delegate_->OnBoundsChanged(new_bounds);
|
| - }
|
| -
|
| - void OnWindowFocusChanged(mus::Window* gained_focus,
|
| - mus::Window* lost_focus) override {
|
| - if (gained_focus == mus_window_)
|
| - delegate_->OnActivationChanged(true);
|
| - else if (lost_focus == mus_window_)
|
| - delegate_->OnActivationChanged(false);
|
| - }
|
| -
|
| - void OnWindowInputEvent(mus::Window* view,
|
| - const mus::mojom::EventPtr& event) override {
|
| - scoped_ptr<ui::Event> ui_event(event.To<scoped_ptr<ui::Event>>());
|
| - delegate_->DispatchEvent(ui_event.get());
|
| - }
|
| -
|
| - void OnWindowSharedPropertyChanged(
|
| - mus::Window* window,
|
| - const std::string& name,
|
| - const std::vector<uint8_t>* old_data,
|
| - const std::vector<uint8_t>* new_data) override {
|
| - if (name != mus::mojom::WindowManager::kShowState_Property)
|
| - return;
|
| - mus::mojom::ShowState show_state = static_cast<mus::mojom::ShowState>(
|
| - window->GetSharedProperty<int32_t>(
|
| - mus::mojom::WindowManager::kShowState_Property));
|
| - if (show_state == show_state_)
|
| - return;
|
| - show_state_ = show_state;
|
| - ui::PlatformWindowState state = ui::PLATFORM_WINDOW_STATE_UNKNOWN;
|
| - switch (show_state_) {
|
| - case mus::mojom::SHOW_STATE_MINIMIZED:
|
| - state = ui::PLATFORM_WINDOW_STATE_MINIMIZED;
|
| - break;
|
| - case mus::mojom::SHOW_STATE_MAXIMIZED:
|
| - state = ui::PLATFORM_WINDOW_STATE_MAXIMIZED;
|
| - break;
|
| - case mus::mojom::SHOW_STATE_RESTORED:
|
| - state = ui::PLATFORM_WINDOW_STATE_NORMAL;
|
| - break;
|
| - case mus::mojom::SHOW_STATE_IMMERSIVE:
|
| - case mus::mojom::SHOW_STATE_PRESENTATION:
|
| - // This may not be sufficient.
|
| - state = ui::PLATFORM_WINDOW_STATE_FULLSCREEN;
|
| - break;
|
| - }
|
| - delegate_->OnWindowStateChanged(state);
|
| - }
|
| -
|
| - ui::PlatformWindowDelegate* delegate_;
|
| - mus::Window* mus_window_;
|
| - mus::mojom::ShowState show_state_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(PlatformWindowMus);
|
| -};
|
| -
|
| -} // namespace
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| // WindowTreeHostMus, public:
|
|
|