remoting/host/input_injector_chromeos.cc uses Ozone. This won't work in mus. We need to make this code work without OzonePlatform.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/aa763fabc40f38692b77b1212d171c126eb2b538 commit aa763fabc40f38692b77b1212d171c126eb2b538 Author: Elliot Glaysher <erg@chromium.org> Date: Fri Sep 15 19:02:14 2017 Start adapting remoting for mushrome. This moves some files in ozone which can be used more generally to //ui/events/, and makes a mus implementation of the InputInjector. Sharing a screen in remoting no longer instantly crashes, and the remote host is able to send keyboard events, but isn't able to send any mouse events because the sending of frame data isn't working yet. Bug: 734671 Change-Id: I18a7ec80af3ac9d17db4bfd8eb44d57a440649de Reviewed-on: https://chromium-review.googlesource.com/653596 Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Gary Kacmarcik <garykac@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: Elliot Glaysher <erg@chromium.org> Cr-Commit-Position: refs/heads/master@{#502324} [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/chrome/browser/extensions/api/messaging/native_message_host_chromeos.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/DEPS [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/basic_desktop_environment.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/basic_desktop_environment.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/chromoting_host_context.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/chromoting_host_context.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/desktop_process_main.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector_chromeos.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector_chromeos.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector_mac.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector_win.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/input_injector_x11.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/it2me/it2me_host.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/it2me_desktop_environment.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/it2me_desktop_environment.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/local_input_monitor_chromeos.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/me2me_desktop_environment.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/me2me_desktop_environment.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/remoting_me2me_host.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/single_window_desktop_environment.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/single_window_desktop_environment.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/win/session_desktop_environment.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/host/win/session_desktop_environment.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/remoting/test/it2me_standalone_host.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/manifest.json [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/public/interfaces/BUILD.gn [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/public/interfaces/remote_event_dispatcher.mojom [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/public/interfaces/window_server_test.mojom [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/service.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/service.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/BUILD.gn [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/platform_display_default_unittest.cc [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/remote_event_dispatcher.cc [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/remote_event_dispatcher.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/window_server_test_impl.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/services/ui/ws/window_server_test_impl.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/BUILD.gn [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/env.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/env.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/event_injector.h [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/mus/system_input_injector_mus.cc [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/mus/system_input_injector_mus.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/mus/window_manager_delegate.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/mus/window_tree_client.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/aura/mus/window_tree_client.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/BUILD.gn [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/event_modifiers.cc [rename] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/event_modifiers.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/BUILD.gn [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/event_converter_evdev_impl.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/event_factory_evdev.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/event_factory_evdev.h [delete] https://crrev.com/c41c1d17393f4fce7be7705b8bc3bcbb1cdf80fe/ui/events/ozone/evdev/event_modifiers_evdev.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/input_injector_evdev.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/input_injector_evdev.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/keyboard_evdev.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/keyboard_evdev.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/ozone/evdev/tablet_event_converter_evdev.h [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/system_input_injector.cc [add] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/events/system_input_injector.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/BUILD.gn [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/platform/cast/ozone_platform_cast.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/platform/headless/ozone_platform_headless.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/platform/wayland/ozone_platform_wayland.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/platform/x11/ozone_platform_x11.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/public/ozone_platform.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/ozone/public/ozone_platform.h [delete] https://crrev.com/c41c1d17393f4fce7be7705b8bc3bcbb1cdf80fe/ui/ozone/public/system_input_injector.h [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/views/mus/drag_interactive_uitest.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/views/mus/mus_client.cc [modify] https://crrev.com/aa763fabc40f38692b77b1212d171c126eb2b538/ui/views/mus/mus_client.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/71afb0eca144cac034f5484808a61940f84f99f4 commit 71afb0eca144cac034f5484808a61940f84f99f4 Author: Elliot Glaysher <erg@chromium.org> Date: Tue Sep 19 21:51:33 2017 Make the OzonePlatform not a subclass. This changes how the Ozone system input injector is created so that OzonePlatform does not subclass an interface; instead added an adapter in NativeMessageHostChromeos. Bug: 734671 Change-Id: Ic6077397882f8e30fec861c710e8cb5cf59c56a9 Reviewed-on: https://chromium-review.googlesource.com/671458 Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Robert Kroeger <rjkroege@chromium.org> Commit-Queue: Elliot Glaysher <erg@chromium.org> Cr-Commit-Position: refs/heads/master@{#502961} [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/chrome/browser/extensions/BUILD.gn [add] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/chrome/browser/extensions/api/messaging/DEPS [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/chrome/browser/extensions/api/messaging/native_message_host_chromeos.cc [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/ui/aura/env.cc [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/ui/events/system_input_injector.cc [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/ui/events/system_input_injector.h [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/ui/ozone/public/ozone_platform.cc [modify] https://crrev.com/71afb0eca144cac034f5484808a61940f84f99f4/ui/ozone/public/ozone_platform.h
This is now waiting on the painting side of things to work; then mouse events can be wired up.
Is there a separate bug for making paining work? Does this bug track making remoting work with mus in the host, or in the client, or both?
This bug is primarily about fixing the ozone dependencies. I was assuming that would make remoting work. I'll file another bug to ensure that is true.
If this bug was purely about breaking the dependency on OzonePlatform, this bug is complete. The thing from OzonePlatform which remoting was using is now injected in, with a partial replacement.
Comment 1 by sky@chromium.org
, Jun 20 2017