Issue metadata
Sign in to add a comment
|
mash: Fix InputMethodManager access in exo |
||||||||||||||||||||||||
Issue descriptionexo crashes with --mash and --ash-enable-wayland-server, because the InputMethodManager is missing in ash process. https://chromium-review.googlesource.com/c/chromium/src/+/703056 can workaround the issue.
,
Oct 9 2017
InputMethodManager (specifically InputMethodManagerImpl) only exists in the browser process, not in ash. That's probably not going to change -- it has a large number of chrome dependencies. IME support in ash is via ash/ime/ime_controller.h, which might need to be extended. Also, the window server has IME mojo interfaces.
,
Jan 12 2018
Can we land the workaround CL so that we can play with ARC on mash? We can put it as TODO in the CL and leave this bug open until we have a concrete solution. It seems ARC is sort of working under mash with just this CL.
,
Feb 26 2018
,
Mar 13 2018
,
Mar 13 2018
Actually, let's keep this and use it for exo.
,
Mar 13 2018
,
Mar 14 2018
,
Mar 18 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/29b26a4ba97065b4247debb2a5c759dacb8c5a88 commit 29b26a4ba97065b4247debb2a5c759dacb8c5a88 Author: Darren Shen <shend@chromium.org> Date: Sun Mar 18 22:36:12 2018 mash: Remove use of InputMethodManager in Wayland server. We're currently using InputMethodManager in the Wayland server to observe changes in the keyboard layout. However, under mash, exo will be in the ash process and InputMethodManager will be in the chrome process, so we cannot depend on InputMethodManager from the Wayland server. We remove the use of InputMethodManager in the Wayland server for observing keyboard changes by using ImeController instead, which uses Mojo for communication. We also add a way of retrieving the current keyboard layout from ImeController. This is a similar design to how ImeController handles caps lock, but it's simpler because we never need to set the layout from ash side. Changes to layout on the chrome side just propagate to the ash side from ImeControllerClient to ImeController. Bug: 772382 Change-Id: I84df1ee1b7e0f54716125fec9d4cd49f3442ed79 Reviewed-on: https://chromium-review.googlesource.com/961505 Commit-Queue: Darren Shen <shend@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Oliver Chang <ochang@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/master@{#543958} [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/ime/ime_controller.cc [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/ime/ime_controller.h [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/ime/ime_controller_unittest.cc [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/ime/test_ime_controller.cc [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/ime/test_ime_controller.h [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/login/ui/login_password_view.h [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/public/interfaces/ime_controller.mojom [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/ash/system/tray_caps_lock.h [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/chrome/browser/ui/ash/ime_controller_client.cc [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/chrome/browser/ui/ash/ime_controller_client_unittest.cc [modify] https://crrev.com/29b26a4ba97065b4247debb2a5c759dacb8c5a88/components/exo/wayland/server.cc
,
Mar 19 2018
There should be no more references to InputMethodManager in //components/exo. |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by penghuang@chromium.org
, Oct 6 2017