For mustash (go/mustash) we're trying to eliminate direct ash -> chrome delegates.
The interfaces for chromeos IME live in //ui/base/ime/chromeos. Code in //ash is already using these interfaces today.
Replace this call pattern:
//ash/system - ImeListView
//ash/system - SystemTrayDelegate
//chrome/browser/ui/ash - SystemTrayDelegateChromeOS
//ui/base/ime/chromeos - InputMethodManager
With this:
//ash/system - ImeListView
//ui/base/ime/chromeos - InputMethodManager
Similar changes can happen in ash::AcceleratorController (which is already calling directly into InputMethodManager for caps-lock features). This will allow the elimination of ImeControlDelegate.
Comment 1 by jamescook@chromium.org
, May 18 2017