Initial implementation of IME service on CrOS.

In order to get rid of NaCl dependency and take advantage of Mojo
to provide a better user typing experience, we plan to create an IME
service for ChromeOS.

See go/mojo-ime-cros-interface for the interface design doc.

More about the project, read go/cros-ime-decoders-mojo for an outline
Please check out for an prototype of this service.

Tested on local by enabling build flags (enable_cros_ime_service and
enable_cros_ime_decoder), then build and run

Bug: 837156
Change-Id: Ib99380ba3fa17f1d93c6ce16da20604afbc24c84
Reviewed-by: Satoru Takabayashi <>
Reviewed-by: Leo Zhang <>
Reviewed-by: Satoru Takabayashi <>
Reviewed-by: Ken Rockot <>
Reviewed-by: Shu Chen <>
Commit-Queue: Leo Zhang <>
Cr-Commit-Position: refs/heads/master@{#575562}
20 files changed