| Index: ash/mus/window_manager.cc
|
| diff --git a/ash/mus/window_manager.cc b/ash/mus/window_manager.cc
|
| index 87090cc9772f987dd2c3c6dfcb32f8bb6072e527..f4598bbf4f4948a3e74a2d662dc9cc8474c83df6 100644
|
| --- a/ash/mus/window_manager.cc
|
| +++ b/ash/mus/window_manager.cc
|
| @@ -12,6 +12,7 @@
|
| #include "ash/mus/bridge/wm_lookup_mus.h"
|
| #include "ash/mus/bridge/wm_shell_mus.h"
|
| #include "ash/mus/bridge/wm_window_mus.h"
|
| +#include "ash/mus/frame/move_event_handler.h"
|
| #include "ash/mus/non_client_frame_controller.h"
|
| #include "ash/mus/property_util.h"
|
| #include "ash/mus/root_window_controller.h"
|
| @@ -26,6 +27,7 @@
|
| #include "components/mus/public/cpp/window_tree_client.h"
|
| #include "components/mus/public/interfaces/mus_constants.mojom.h"
|
| #include "components/mus/public/interfaces/window_manager.mojom.h"
|
| +#include "ui/base/hit_test.h"
|
| #include "ui/events/mojo/event.mojom.h"
|
| #include "ui/views/mus/screen_mus.h"
|
|
|
| @@ -230,6 +232,33 @@ void WindowManager::OnWmNewDisplay(::mus::Window* window,
|
| CreateRootWindowController(window, display);
|
| }
|
|
|
| +void WindowManager::OnWmPerformMoveLoop(
|
| + ::mus::Window* window,
|
| + ::mus::mojom::MoveLoopSource source,
|
| + const gfx::Point& cursor_location,
|
| + const base::Callback<void(bool)>& on_done) {
|
| + WmWindowMus* child_window = WmWindowMus::Get(window);
|
| + MoveEventHandler* handler = MoveEventHandler::GetForWindow(child_window);
|
| + if (!handler) {
|
| + on_done.Run(false);
|
| + return;
|
| + }
|
| +
|
| + DCHECK(!handler->IsDragInProgress());
|
| + aura::client::WindowMoveSource aura_source =
|
| + source == ::mus::mojom::MoveLoopSource::MOUSE
|
| + ? aura::client::WINDOW_MOVE_SOURCE_MOUSE
|
| + : aura::client::WINDOW_MOVE_SOURCE_TOUCH;
|
| + handler->AttemptToStartDrag(cursor_location, HTCAPTION, aura_source, on_done);
|
| +}
|
| +
|
| +void WindowManager::OnWmCancelMoveLoop(::mus::Window* window) {
|
| + WmWindowMus* child_window = WmWindowMus::Get(window);
|
| + MoveEventHandler* handler = MoveEventHandler::GetForWindow(child_window);
|
| + if (handler)
|
| + handler->RevertDrag();
|
| +}
|
| +
|
| void WindowManager::OnAccelerator(uint32_t id, const ui::Event& event) {
|
| switch (id) {
|
| case kWindowSwitchAccelerator:
|
| @@ -242,17 +271,5 @@ void WindowManager::OnAccelerator(uint32_t id, const ui::Event& event) {
|
| }
|
| }
|
|
|
| -void WindowManager::OnWmPerformMoveLoop(
|
| - ::mus::Window* window,
|
| - ::mus::mojom::MoveLoopSource source,
|
| - const gfx::Point& cursor_location,
|
| - const base::Callback<void(bool)>& on_done) {
|
| - NOTIMPLEMENTED();
|
| -}
|
| -
|
| -void WindowManager::OnWmCancelMoveLoop(::mus::Window* window) {
|
| - NOTIMPLEMENTED();
|
| -}
|
| -
|
| } // namespace mus
|
| } // namespace ash
|
|
|