Once we add the ability for ash to create windows directly for displays it should be possible to start using WindowTreeHostManager.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b commit bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b Author: sky <sky@chromium.org> Date: Sat Apr 08 00:23:16 2017 Adds ability for WindowManager to create display roots Prior to this patch mus would automatically create a Window for each display and tell the WindowManager about it. This patch allows the WindowManager to control this behavior so that if the windowmanager wants to create the windows it can. In the new mode mus still creates a window for the display, but it doesn't tell the client. The expectation is the client eventually calls SetDisplayRoot() with the client supplied window. When SetDisplayRoot() is called mus wires up the window appropriately. The expectation is ash transitions to observing newly added displays using another mechanism and then tells mus about it. BUG= 708287 TEST=covered by tests R=erg@chromium.org Review-Url: https://codereview.chromium.org/2804403002 Cr-Commit-Position: refs/heads/master@{#463070} [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/public/interfaces/window_manager.mojom [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/public/interfaces/window_manager_window_tree_factory.mojom [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/display.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/display.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/display_binding.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/display_manager.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/test_utils.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/test_utils.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_manager_state.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_manager_state.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_manager_window_tree_factory.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_manager_window_tree_factory.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_server.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_server.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_tree.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_tree.h [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/services/ui/ws/window_tree_unittest.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/ui/aura/mus/window_tree_client.cc [modify] https://crrev.com/bb4b4de1b5a2b99c62e71b93f6c157e8290e3c3b/ui/aura/mus/window_tree_client.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8f92a696b9f562141c5ea6af2e5dd1628a6694d8 commit 8f92a696b9f562141c5ea6af2e5dd1628a6694d8 Author: sky <sky@chromium.org> Date: Tue Apr 18 16:09:39 2017 cros: Adds ShellPort functions for simplified display mode Specifically AshWindowTreeHost::Create() now calls to the ShellPort with additional information that mus needs. Additionally added CreateNativeDisplayDelegate(), which is not yet wired up. CreateNativeDisplayDelegate() will be wired up separately. BUG= 708287 TEST=none R=jamescook@chromium.org Review-Url: https://codereview.chromium.org/2821203002 Cr-Commit-Position: refs/heads/master@{#465255} [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/aura/DEPS [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/aura/shell_port_classic.cc [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/aura/shell_port_classic.h [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/display/mirror_window_controller.cc [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/display/window_tree_host_manager.cc [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/host/DEPS [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/host/ash_window_tree_host.cc [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/host/ash_window_tree_host.h [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/host/ash_window_tree_host_init_params.h [add] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/mus/bridge/DEPS [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/mus/bridge/shell_port_mash.cc [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/mus/bridge/shell_port_mash.h [modify] https://crrev.com/8f92a696b9f562141c5ea6af2e5dd1628a6694d8/ash/shell_port.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fef30214eb9d49ab66f9fe227199fb53e9c40892 commit fef30214eb9d49ab66f9fe227199fb53e9c40892 Author: sky <sky@chromium.org> Date: Wed Apr 19 00:41:23 2017 mus: Adds WindowManagerDelegate::OnWmConnected() Which is called after the connection to mus as the window manager is established. BUG= 708287 TEST=none R=erg@chromium.org Review-Url: https://codereview.chromium.org/2824103004 Cr-Commit-Position: refs/heads/master@{#465444} [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ash/mus/window_manager.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ash/mus/window_manager.h [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/mash/simple_wm/simple_wm.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/mash/simple_wm/simple_wm.h [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/services/ui/test_wm/test_wm.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/services/ui/ws/window_manager_client_unittest.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/services/ui/ws/window_server_test_base.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/services/ui/ws/window_server_test_base.h [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/mus/window_manager_delegate.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/mus/window_manager_delegate.h [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/mus/window_tree_client.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/test/aura_test_base.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/test/aura_test_base.h [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/test/mus/window_tree_client_private.cc [modify] https://crrev.com/fef30214eb9d49ab66f9fe227199fb53e9c40892/ui/aura/test/mus/window_tree_client_private.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/72c2b3d42fe06a1fb02fda417ae73f37dca79e1d commit 72c2b3d42fe06a1fb02fda417ae73f37dca79e1d Author: sky <sky@chromium.org> Date: Wed Apr 19 15:08:26 2017 Adds bounds to parameters of StubWindow constrctor This way the initial bounds can be configured during construction as with other windows. BUG= 708287 TEST=covered by tests R=sadrul@chromium.org Review-Url: https://codereview.chromium.org/2823853006 Cr-Commit-Position: refs/heads/master@{#465608} [modify] https://crrev.com/72c2b3d42fe06a1fb02fda417ae73f37dca79e1d/ui/platform_window/stub/stub_window.cc [modify] https://crrev.com/72c2b3d42fe06a1fb02fda417ae73f37dca79e1d/ui/platform_window/stub/stub_window.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a5a9fddc48214cb8114e39fe1659e130a178cc3a commit a5a9fddc48214cb8114e39fe1659e130a178cc3a Author: sky <sky@chromium.org> Date: Wed Apr 19 18:59:29 2017 Extracts parameters to WindowTreeHostMus into structure I'm going to need to pass additional parameters to the constructor. It's getting a bit unwieldy and having two constructors for two different purposes is error prone. So, I've extracted the paramters into a structure and created a factory function for the common case. BUG= 708287 TEST=covered by tests R=erg@chromium.org Review-Url: https://codereview.chromium.org/2823903005 Cr-Commit-Position: refs/heads/master@{#465685} [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ash/mus/window_manager_unittest.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/chrome/browser/ui/views/frame/browser_frame_mus.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/services/ui/ws/window_manager_client_unittest.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/BUILD.gn [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_client.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_client_unittest.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_host_mus.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_host_mus.h [add] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_host_mus_init_params.cc [add] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_host_mus_init_params.h [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/aura/mus/window_tree_host_mus_unittest.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/views/mus/desktop_window_tree_host_mus.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/views/mus/desktop_window_tree_host_mus.h [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/views/mus/mus_client.cc [modify] https://crrev.com/a5a9fddc48214cb8114e39fe1659e130a178cc3a/ui/views/test/native_widget_factory_aura_mus.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5 commit cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5 Author: sky <sky@chromium.org> Date: Fri Apr 28 20:52:58 2017 chromeos: Makes mushrome use simplified display management This also adds a stanalone_ash target that is the equivalent of ash_shell_with_content but running in mushrome mode and without content. BUG= 708287 , 706589 TEST=covered by tests R=kylechar@chromium.org Review-Url: https://codereview.chromium.org/2840043003 Cr-Commit-Position: refs/heads/master@{#468123} [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/aura/shell_port_classic.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/display/mirror_window_controller.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/display/window_tree_host_manager.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/host/transformer_helper.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/BUILD.gn [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/DEPS [add] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/ash_window_tree_host_mus.cc [add] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/ash_window_tree_host_mus.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/bridge/shell_port_mash.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/bridge/shell_port_mash.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/main.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/test/ash_test_impl_mus.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/test/wm_test_base.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/test/wm_test_helper.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/window_manager.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/window_manager.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/window_manager_application.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/mus/window_manager_application.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/shell.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/shell_init_params.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/test/ash_test_base.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/test/ash_test_helper.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ash/wm/workspace/workspace_layout_manager_unittest.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/chrome/app/mash/embedded_services.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/chrome/browser/chromeos/chrome_browser_main_chromeos.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/chrome/browser/ui/ash/ash_init.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/services/ui/display/screen_manager_forwarding.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/services/ui/ws/window_server.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ui/aura/mus/window_manager_delegate.h [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ui/aura/mus/window_tree_client.cc [modify] https://crrev.com/cfaad89ae8da7b8a0d0055db9f5bc5ac76cf6cf5/ui/aura/window_tree_host.h
Mushrome is now using WindowTreeHostManager.
Comment 1 by bugdroid1@chromium.org
, Apr 8 2017