It'll do this using the WindowService as a library (837684).
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0eea3b2f9119e86c4224bccece816d0c19a77030 commit 0eea3b2f9119e86c4224bccece816d0c19a77030 Author: Scott Violet <sky@chromium.org> Date: Sat May 05 16:50:06 2018 chromeos: makes WindowService available in classic builds This makes it so that if an app requests the WindowService it's launched in Ash. This is only enabled if --mash and --mus is not specified. BUG= 837686 TEST=none Change-Id: Ic01879e0aff8828b17c0652bd74078daba628d40 Reviewed-on: https://chromium-review.googlesource.com/1045248 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#556338} [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/BUILD.gn [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/DEPS [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/ash_service_registry.cc [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/ash_service_registry.h [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/ash_service_registry_unittest.cc [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/browser_process_platform_part_chromeos.cc [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/chrome_content_browser_client.cc [modify] https://crrev.com/0eea3b2f9119e86c4224bccece816d0c19a77030/chrome/browser/chrome_content_browser_client_unittest.cc
This is wired up classic mode, but there is no equivalent of --mash yet. I'm going to file a new bug for that.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/571dcb670745d9cdbac4e337a50d80200ff994b8 commit 571dcb670745d9cdbac4e337a50d80200ff994b8 Author: Scott Violet <sky@chromium.org> Date: Mon May 07 23:04:49 2018 aura: remove create_mouse_location_manager parameter Instead add a function. This is easier to use in calling code. BUG= 837686 TEST=none Change-Id: I0b9b8e973d9d454f18a7711f2d8ab6a6540144fa Reviewed-on: https://chromium-review.googlesource.com/1045466 Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#556597} [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/services/ui/test_ws/test_ws.cc [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/services/ui/ws2/window_service.cc [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/services/ui/ws2/window_service_client_unittest.cc [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/ui/aura/env.cc [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/ui/aura/env.h [modify] https://crrev.com/571dcb670745d9cdbac4e337a50d80200ff994b8/ui/aura/mouse_location_manager_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3724dbc09c00231a8fa193813e6847b6ae9daef2 commit 3724dbc09c00231a8fa193813e6847b6ae9daef2 Author: Scott Violet <sky@chromium.org> Date: Fri Jun 01 21:43:06 2018 ash: Makes AshTestBase start WindowService And makes AshTestBase::CreateTestWindow() (in classic mode) route through WindowService. In other words, CreateTestWindow() now behaves similar to if a client requested a new window to be created. Two things needed updating here: . One shelf test was failing because an animation triggered in immersive mode was moving a window, resulting in different results. Getting a handle to the ImmersiveFullscreenController proved painful, so I added ability to control animations when ImmersiveFullscreenController is created. . I changed WorkspaceLayoutManagerTest.SizeToWorkArea to not use CreateTestWindow(). This is because CreateTestWindow() results in slightly different path that effectively breaks assumptions made by this test. The other option is to remove the test entirely. BUG= 837686 TEST=test only changes Change-Id: Ib4a323c30631d28e626a87cc1b394082b6d95d70 Reviewed-on: https://chromium-review.googlesource.com/1081881 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#563809} [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/BUILD.gn [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/ime/ime_focus_handler_unittest.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/public/cpp/immersive/immersive_fullscreen_controller.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/public/cpp/immersive/immersive_fullscreen_controller.h [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/public/cpp/immersive/immersive_fullscreen_controller_test_api.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/public/cpp/immersive/immersive_fullscreen_controller_test_api.h [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/shelf/shelf_layout_manager_unittest.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/test/ash_test_base.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/test/ash_test_base.h [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/test/ash_test_helper.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/test/ash_test_helper.h [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/wm/workspace/workspace_layout_manager_unittest.cc [modify] https://crrev.com/3724dbc09c00231a8fa193813e6847b6ae9daef2/ash/ws/window_service_owner.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8 commit 5b63ef65fa5a241cb9822ed0314ca2fae0b264d8 Author: Kim Paulhamus <kpaulhamus@chromium.org> Date: Fri Jun 01 22:04:28 2018 Revert "ash: Makes AshTestBase start WindowService" This reverts commit 3724dbc09c00231a8fa193813e6847b6ae9daef2. Reason for revert: Compile failed on ChromiumOS: https://logs.chromium.org/v/?s=chromium%2Fbuildbucket%2Fcr-buildbucket.appspot.com%2F8944884828787367504%2F%2B%2Fsteps%2Fcompile%2F0%2Fstdout Original change's description: > ash: Makes AshTestBase start WindowService > > And makes AshTestBase::CreateTestWindow() (in classic mode) route through > WindowService. In other words, CreateTestWindow() now behaves similar to if > a client requested a new window to be created. > > Two things needed updating here: > . One shelf test was failing because an animation triggered in immersive mode > was moving a window, resulting in different results. Getting a handle to > the ImmersiveFullscreenController proved painful, so I added ability to > control animations when ImmersiveFullscreenController is created. > . I changed WorkspaceLayoutManagerTest.SizeToWorkArea to not use > CreateTestWindow(). This is because CreateTestWindow() results in slightly > different path that effectively breaks assumptions made by this test. The > other option is to remove the test entirely. > > BUG= 837686 > TEST=test only changes > > Change-Id: Ib4a323c30631d28e626a87cc1b394082b6d95d70 > Reviewed-on: https://chromium-review.googlesource.com/1081881 > Commit-Queue: Scott Violet <sky@chromium.org> > Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#563809} TBR=xiyuan@chromium.org,sky@chromium.org Change-Id: Idf88f3a030641968ec7e994511e788c52e9c7420 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 837686 Reviewed-on: https://chromium-review.googlesource.com/1083571 Reviewed-by: Kim Paulhamus <kpaulhamus@chromium.org> Commit-Queue: Kim Paulhamus <kpaulhamus@chromium.org> Cr-Commit-Position: refs/heads/master@{#563820} [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/BUILD.gn [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/ime/ime_focus_handler_unittest.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/public/cpp/immersive/immersive_fullscreen_controller.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/public/cpp/immersive/immersive_fullscreen_controller.h [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/public/cpp/immersive/immersive_fullscreen_controller_test_api.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/public/cpp/immersive/immersive_fullscreen_controller_test_api.h [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/shelf/shelf_layout_manager_unittest.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/test/ash_test_base.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/test/ash_test_base.h [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/test/ash_test_helper.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/test/ash_test_helper.h [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/wm/workspace/workspace_layout_manager_unittest.cc [modify] https://crrev.com/5b63ef65fa5a241cb9822ed0314ca2fae0b264d8/ash/ws/window_service_owner.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/0d6b1f56c51176f08cec49cb304389545909bc4f commit 0d6b1f56c51176f08cec49cb304389545909bc4f Author: Scott Violet <sky@chromium.org> Date: Thu Jun 14 17:53:22 2018 chromeos: have ash always create the UI Service Currently ash and ui are bundled together by way of process groups. Process groups make it hard to have an explicit construction ordering. For OopAsh we need Ash to control creation of the UI Service. This patch removes progress-groups and instead uses ServiceFactory. Ash has two distinct ways to provide the 'Ash' service, which necessitates the change in two places. WindowManagerService will go away soon, and we will only have one way. BUG= 837686 TEST=covered by tests Change-Id: Id871fe56331f99fcfb6225f4ebf59378a533600a Reviewed-on: https://chromium-review.googlesource.com/1098233 Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Reviewed-by: Ken Rockot <rockot@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#567339} [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/BUILD.gn [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/DEPS [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/ash_service.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/ash_service.h [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/manifest.json [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/BUILD.gn [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/OWNERS [add] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/ash_content_browser_manifest_overlay.json [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/ash_shell_resources.grd [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/content/client/shell_browser_main_parts.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/shell/content/client/shell_content_browser_client.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/window_manager_service.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/window_manager_service.h [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/ws/window_service_owner.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ash/ws/window_service_owner.h [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/browser/DEPS [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/browser/ash_service_registry.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/browser/ash_service_registry.h [delete] https://crrev.com/7ad40f282bd0717deedfdce2408b13fc7221e12a/chrome/browser/ash_service_registry_browsertest.cc [delete] https://crrev.com/7ad40f282bd0717deedfdce2408b13fc7221e12a/chrome/browser/ash_service_registry_unittest.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/browser/chrome_content_browser_client.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/test/BUILD.gn [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/utility/mash_service_factory.cc [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/chrome/utility/mash_service_factory.h [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/content/public/app/BUILD.gn [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/mash/BUILD.gn [modify] https://crrev.com/0d6b1f56c51176f08cec49cb304389545909bc4f/ui/views/mus/BUILD.gn
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6fd9b2420f05432de515d8fd4d2f20238b9486e9 commit 6fd9b2420f05432de515d8fd4d2f20238b9486e9 Author: Scott Violet <sky@chromium.org> Date: Fri Jun 15 15:45:01 2018 moves GpuHost files into own directory So that they can be shared with ash. BUG= 837686 TEST=covered by tests TBR=tsepez@chromium.org Change-Id: Ide4e36e141454c4c120ad2f04544bf201f402550 Reviewed-on: https://chromium-review.googlesource.com/1102079 Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#567650} [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/BUILD.gn [add] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/BUILD.gn [add] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/DEPS [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/arc_client.cc [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/arc_client.h [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_client.cc [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_client.h [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_host.cc [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_host.h [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_host_delegate.h [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/gpu_host_unittest.cc [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/test_gpu_host.cc [rename] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/gpu_host/test_gpu_host.h [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/service.cc [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/BUILD.gn [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/DEPS [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/test_utils.cc [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/test_utils.h [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/window_server.cc [modify] https://crrev.com/6fd9b2420f05432de515d8fd4d2f20238b9486e9/services/ui/ws/window_server.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6fca131df518b7eb77eb53875e56c9c1ba55da3d commit 6fca131df518b7eb77eb53875e56c9c1ba55da3d Author: Scott Violet <sky@chromium.org> Date: Fri Jun 15 16:27:26 2018 Converts IsMashEnabled() to IsAshInProcess() And adds OopAsh for the new code path. BUG= 837686 TEST=covered by tests Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I5e0dbaccd8974ecf996e7507f0e327fc37c281db Reviewed-on: https://chromium-review.googlesource.com/1101648 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#567682} [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ash/window_manager.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/chrome/browser/chromeos/arc/video/gpu_arc_video_service_host.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/chrome/browser/ui/views/toolbar/browser_app_menu_button.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/components/arc/ime/arc_ime_service.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/components/services/pdf_compositor/pdf_compositor_service.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/browser_main_loop.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/browser_plugin/browser_plugin_guest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/compositor/gpu_process_transport_factory.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/frame_host/cross_process_frame_connector.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/frame_host/render_widget_host_view_guest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/frame_host/render_widget_host_view_guest_unittest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/gpu/browser_gpu_channel_host_factory.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/gpu/gpu_process_host.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/oop_browsertest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_process_host_impl.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_widget_host_view_aura.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_widget_host_view_child_frame.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_widget_host_view_child_frame_browsertest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/renderer_host/render_widget_host_view_child_frame_unittest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/service_manager/common_browser_interfaces.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/web_contents/web_contents_view_aura.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/browser/web_contents/web_contents_view_guest.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/common/content_param_traits.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/ppapi_plugin/ppapi_thread.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/browser_plugin/browser_plugin.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/media/media_factory.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/mus/renderer_window_tree_client.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/render_frame_proxy.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/render_thread_impl.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/content/renderer/render_widget.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/gpu/ipc/service/gpu_init.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ui/aura/test/aura_test_suite_setup.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ui/base/ui_base_features.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ui/base/ui_base_features.h [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ui/ozone/platform/drm/host/drm_device_connector.cc [modify] https://crrev.com/6fca131df518b7eb77eb53875e56c9c1ba55da3d/ui/ozone/platform/drm/host/drm_gpu_platform_support_host.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca commit ae4c25d56f8a4a9071c1a5ef269578a8cda9beca Author: Scott Violet <sky@chromium.org> Date: Tue Jun 19 15:50:15 2018 chromeos: renames GpuSupport to GpuInterfaceProvider And updates the functions to better reflect what it is suppose to do. There was a race conditions with how the code was before. In particular, because access to content has to be on the io-thread care must be taken during destruction. Creation of the interfaces happens on the io thread, which means destruction of the object supplied to AddInterface() has to happen on the io-thread. I separated out the parts that happen on the io thread into a refcounted thread safe that is destroyed on the io thread. BUG= 837686 TEST=covered by tests Change-Id: Ia3dce4894a3cf4b7a08cd5a9c4d1fae674d7e7c5 Reviewed-on: https://chromium-review.googlesource.com/1105611 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#568469} [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/BUILD.gn [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/content/DEPS [add] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/content/content_gpu_interface_provider.cc [add] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/content/content_gpu_interface_provider.h [delete] https://crrev.com/b257999e07e6621af5c067ecdeb4aa0b96a4de0c/ash/content/content_gpu_support.cc [delete] https://crrev.com/b257999e07e6621af5c067ecdeb4aa0b96a4de0c/ash/content/content_gpu_support.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/shell.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/shell.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/shell/content/client/shell_browser_main_parts.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/shell_init_params.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/shell_init_params.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/ws/window_service_owner.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/ash/ws/window_service_owner.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/chrome/browser/ui/ash/ash_shell_init.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/chrome/test/base/view_event_test_platform_part_chromeos.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/test_ws/test_ws.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/ws2/BUILD.gn [add] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/ws2/gpu_interface_provider.h [delete] https://crrev.com/b257999e07e6621af5c067ecdeb4aa0b96a4de0c/services/ui/ws2/gpu_support.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/ws2/window_service.cc [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/ws2/window_service.h [modify] https://crrev.com/ae4c25d56f8a4a9071c1a5ef269578a8cda9beca/services/ui/ws2/window_service_test_setup.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6c0eb696da35944937aac1c66efa91c13523909a commit 6c0eb696da35944937aac1c66efa91c13523909a Author: Scott Violet <sky@chromium.org> Date: Wed Jun 20 01:31:26 2018 chromeos: wireup ime for OopAsh in the ash side To make things easier AshWindowTreeHostPlatform also creates an InputMethodMus. This way the right driver/registrar code is used. BUG= 837686 TEST=covered by tests Change-Id: I82142be913f5a4a8ae1a368bea6b8579de8b251c Reviewed-on: https://chromium-review.googlesource.com/1107007 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#568685} [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/BUILD.gn [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/host/ash_window_tree_host_platform.cc [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/host/ash_window_tree_host_platform.h [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/shell.cc [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/shell.h [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ash/shell_init_params.h [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/BUILD.gn [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/input_method_mus.cc [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/input_method_mus.h [add] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/input_method_mus_delegate.h [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/input_method_mus_unittest.cc [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/window_tree_host_mus.cc [modify] https://crrev.com/6c0eb696da35944937aac1c66efa91c13523909a/ui/aura/mus/window_tree_host_mus.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c33a6b527952da4c5d1dae7c125f7260c8328040 commit c33a6b527952da4c5d1dae7c125f7260c8328040 Author: Scott Violet <sky@chromium.org> Date: Wed Jun 20 13:44:47 2018 refactors ui::ContextFactoryPrivate implementation from content Into HostContextFactoryPrivate. This also adds a ui::ContextFactory implementation that uses it to services/ui/ws2. I could move the ContextFactory implementation to ui/compositor/host as well, but I kept it where it is used. BUG= 837686 TEST=covered by tests Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel Change-Id: I95f89f9c14ac93560805bf47a9fe074d1ab1c58d Reviewed-on: https://chromium-review.googlesource.com/1105307 Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#568820} [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/components/viz/host/BUILD.gn [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/components/viz/host/DEPS [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/components/viz/host/host_display_client.cc [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/components/viz/host/host_display_client.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/BUILD.gn [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/compositor/gpu_process_transport_factory.cc [delete] https://crrev.com/984d284863ca13f961a0f73f8c52989323e82ced/content/browser/compositor/in_process_display_client.cc [delete] https://crrev.com/984d284863ca13f961a0f73f8c52989323e82ced/content/browser/compositor/in_process_display_client.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/compositor/viz_process_transport_factory.cc [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/compositor/viz_process_transport_factory.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/renderer_host/compositor_impl_android.cc [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/content/browser/renderer_host/compositor_impl_android.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/mojo/public/cpp/bindings/sync_call_restrictions.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/services/ui/ws2/BUILD.gn [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/services/ui/ws2/host_context_factory.cc [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/services/ui/ws2/host_context_factory.h [modify] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/compositor.h [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/BUILD.gn [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/DEPS [rename] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/external_begin_frame_controller_client_impl.cc [rename] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/external_begin_frame_controller_client_impl.h [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/host_context_factory_private.cc [add] https://crrev.com/c33a6b527952da4c5d1dae7c125f7260c8328040/ui/compositor/host/host_context_factory_private.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/65b73f95c2e3a44dbb2d547513375f0c8c2de720 commit 65b73f95c2e3a44dbb2d547513375f0c8c2de720 Author: Scott Violet <sky@chromium.org> Date: Thu Jun 21 19:26:38 2018 chromeos: gets OopAsh working This makes AshService create the necessary things when ash runs out of the browser process. BUG= 837686 TEST=covered by tests Change-Id: Ia7203fbde3737c8009315c19de0d3b981605eb5a Reviewed-on: https://chromium-review.googlesource.com/1109465 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#569353} [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/BUILD.gn [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/DEPS [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/ash_service.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/ash_service.h [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/frame/header_view.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/shell.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/system/flag_warning/flag_warning_tray.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/system/status_area_widget.cc [add] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/ws/ash_gpu_interface_provider.cc [add] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ash/ws/ash_gpu_interface_provider.h [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/services/ui/public/cpp/input_devices/BUILD.gn [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/services/ui/ws2/window_service.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/services/ui/ws2/window_service.h [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ui/aura/env.cc [modify] https://crrev.com/65b73f95c2e3a44dbb2d547513375f0c8c2de720/ui/aura/env.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3d0c4bcca8ab7b7bd0e642511e2f6d7f0166f2e7 commit 3d0c4bcca8ab7b7bd0e642511e2f6d7f0166f2e7 Author: Scott Violet <sky@chromium.org> Date: Thu Jun 21 22:52:02 2018 chromeos: fix id sent to parent in OnFrameSinkIdAllocated() It was passing in the FrameSinkId, when it should have passed in the window id. BUG= 837686 TEST=covered by test Change-Id: I2f6920528403452696d358110605aa85519a0b2d Reviewed-on: https://chromium-review.googlesource.com/1110748 Reviewed-by: Michael Wasserman <msw@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#569391} [modify] https://crrev.com/3d0c4bcca8ab7b7bd0e642511e2f6d7f0166f2e7/services/ui/ws2/window_tree.cc [modify] https://crrev.com/3d0c4bcca8ab7b7bd0e642511e2f6d7f0166f2e7/services/ui/ws2/window_tree_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cd77188ee4373e40d710b957de8ff52601e5912f commit cd77188ee4373e40d710b957de8ff52601e5912f Author: Scott Violet <sky@chromium.org> Date: Thu Jun 21 23:05:58 2018 chromeos: random wiring for OopAsh Adds registering the ui::mojom::Arc interface. Adds early to AccessibilityController::UpdateVirtualKeyboardFromPref. BUG= 837686 TEST=none Change-Id: If417134ed26931a050e9bfdfd4b267d8ee819b9a Reviewed-on: https://chromium-review.googlesource.com/1111012 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#569413} [modify] https://crrev.com/cd77188ee4373e40d710b957de8ff52601e5912f/ash/accessibility/accessibility_controller.cc [modify] https://crrev.com/cd77188ee4373e40d710b957de8ff52601e5912f/ash/shell_port_mash.h [modify] https://crrev.com/cd77188ee4373e40d710b957de8ff52601e5912f/ash/ws/ash_gpu_interface_provider.cc [modify] https://crrev.com/cd77188ee4373e40d710b957de8ff52601e5912f/ash/ws/ash_gpu_interface_provider.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d15bcae0ad81850478cbb5e8218da8ae134d820d commit d15bcae0ad81850478cbb5e8218da8ae134d820d Author: Scott Violet <sky@chromium.org> Date: Fri Jun 22 20:43:31 2018 chromeos: adds support for sending CANCEL_MODE events And this also changes ws2 to only stop cancelable events. To do otherwise triggers a CHECK in Event. BUG= 837686 TEST=covered by tests Change-Id: I6bc3d8b6a02eda1ecf7b7aecec6729a9ef7b1a2e Reviewed-on: https://chromium-review.googlesource.com/1111268 Commit-Queue: Scott Violet <sky@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Michael Wasserman <msw@chromium.org> Cr-Commit-Position: refs/heads/master@{#569751} [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/services/ui/ws2/event_test_utils.cc [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/services/ui/ws2/server_window.cc [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/services/ui/ws2/window_tree_unittest.cc [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/event.cc [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/event.h [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/event_utils.cc [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/event_utils.h [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/mojo/event_constants.mojom [modify] https://crrev.com/d15bcae0ad81850478cbb5e8218da8ae134d820d/ui/events/mojo/event_struct_traits.cc
As we've made --mash use ws2, this bug is now fixed.
Comment 1 by bugdroid1@chromium.org
, May 5 2018