This requires us to have an API for mus and to implement it in our NativeWidgetMus implementation.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6d0134e5306fcdc9b27865b4171e35ee929692ce commit 6d0134e5306fcdc9b27865b4171e35ee929692ce Author: erg <erg@chromium.org> Date: Thu Jul 07 00:41:13 2016 mus: Add an API for client initiated window moves. This adds a set of APIs so the client can perform a blocking window move. The client asks the window server to perform a window move, which forwards this request to the window manager. We want to do this instead of having the client perform all moves itself because the window manager performs special actions, like docking a window when dragged to the side. BUG= 622900 Review-Url: https://codereview.chromium.org/2060513002 Cr-Commit-Position: refs/heads/master@{#404021} [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/ash/mus/window_manager.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/ash/mus/window_manager.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/demo/mus_demo.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/demo/mus_demo.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/lib/in_flight_change.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/lib/in_flight_change.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/lib/window.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/lib/window_tree_client.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/tests/test_window_tree.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/tests/test_window_tree.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/tests/window_server_test_base.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/tests/window_server_test_base.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/window.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/window_manager_delegate.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/cpp/window_tree_client.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/interfaces/window_manager.mojom [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/interfaces/window_manager_constants.mojom [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/public/interfaces/window_tree.mojom [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/test_wm/test_wm.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/access_policy.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/default_access_policy.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/default_access_policy.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/test_utils.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/test_utils.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_manager_access_policy.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_manager_access_policy.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_manager_client_unittest.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_server.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_server.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_tree.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_tree.h [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_tree_client_unittest.cc [modify] https://crrev.com/6d0134e5306fcdc9b27865b4171e35ee929692ce/services/ui/ws/window_tree_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6ed29f61913c5429093ff5b22667a15c425914b4 commit 6ed29f61913c5429093ff5b22667a15c425914b4 Author: erg <erg@chromium.org> Date: Fri Jul 08 20:10:40 2016 mus: Use the new drag API to implement tab dragging in chrome. BUG= 622900 , 622575 Review-Url: https://codereview.chromium.org/2099513003 Cr-Commit-Position: refs/heads/master@{#404473} [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ash/mus/frame/move_event_handler.cc [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ash/mus/frame/move_event_handler.h [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ash/mus/window_manager.cc [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/chrome/browser/ui/BUILD.gn [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/chrome/browser/ui/views/tabs/tab_drag_controller.cc [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/chrome/browser/ui/views/tabs/window_finder.h [add] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/chrome/browser/ui/views/tabs/window_finder_mus.cc [add] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/chrome/browser/ui/views/tabs/window_finder_mus.h [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ui/views/mus/native_widget_mus.cc [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ui/views/mus/native_widget_mus.h [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ui/views/mus/window_manager_connection.cc [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ui/views/mus/window_manager_connection.h [modify] https://crrev.com/6ed29f61913c5429093ff5b22667a15c425914b4/ui/views/widget/widget_unittest.cc
Comment 1 by bugdroid1@chromium.org
, Jul 7 2016