Chromium Code Reviews| Index: services/ui/public/interfaces/ime/ime.mojom |
| diff --git a/services/ui/public/interfaces/ime/ime.mojom b/services/ui/public/interfaces/ime/ime.mojom |
| index d999b3353a4b1f2c313a919b69cb7d4196b8f17a..6fe2675e425d11b6fc0e773b00f6927fef3709e7 100644 |
| --- a/services/ui/public/interfaces/ime/ime.mojom |
| +++ b/services/ui/public/interfaces/ime/ime.mojom |
| @@ -4,6 +4,7 @@ |
| module ui.mojom; |
| +import "mojo/common/rtl.mojom"; |
| import "ui/events/mojo/event.mojom"; |
| import "ui/gfx/geometry/mojo/geometry.mojom"; |
| import "ui/gfx/range/mojo/range.mojom"; |
| @@ -70,8 +71,8 @@ enum TextInputMode { |
| // the client via the TextInputClient. |
| interface IMEDriver { |
| // session_id is unique and generated by Mus. |
| - StartSession(int32 session_id, TextInputClient client, |
| - InputMethod& input_method); |
| + StartSession(int32 session_id, TextInputClientInformation client_info, |
| + TextInputClient client, InputMethod& input_method); |
| CancelSession(int32 session_id); |
| }; |
| @@ -79,7 +80,7 @@ interface IMEDriver { |
| // does minimal processing and mostly just acts as lightweight proxy between |
| // the client app and the registered IME driver. |
| interface IMEServer { |
| - StartSession(TextInputClient client, |
| + StartSession(TextInputClientInformation client_info, TextInputClient client, |
| InputMethod& input_method); |
| }; |
| @@ -109,6 +110,17 @@ interface InputMethod { |
| CancelComposition(); |
| }; |
| +// Contains information about a TextInputClient required by an IMEDriver. Client |
| +// sends the initial state when starting a session, and can update some of these |
| +// variables using methods in InputMethod. |
| +struct TextInputClientInformation { |
|
sky
2017/01/13 20:32:41
Information -> Data or Details?
|
| + TextInputType text_input_type; |
| + TextInputMode text_input_mode; |
| + mojo.common.mojom.TextDirection text_direction; |
| + int32 text_input_flags; |
| + gfx.mojom.Rect caret_bounds; |
|
sky
2017/01/13 20:32:41
Would it make sense to move TextInputClient and In
Hadi
2017/01/13 21:47:52
Yes, I think it'll make the code simpler. Done.
|
| +}; |
| + |
| // IME drivers send updates to clients using the TextInputClient interface. |
| interface TextInputClient { |
| // Functions corresponding to "input method result" functions of |