| // Copyright 2017 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| library fuchsia.ui.input; |
| |
| /// The service provided by an IME |
| @discoverable |
| protocol ImeService { |
| GetInputMethodEditor(resource struct { |
| keyboard_type KeyboardType; |
| action InputMethodAction; |
| initial_state TextInputState; |
| client client_end:InputMethodEditorClient; |
| editor server_end:InputMethodEditor; |
| }); |
| ShowKeyboard(); |
| HideKeyboard(); |
| }; |
| |
| /// Onscreen keyboard containers connect to this to know when a keyboard |
| /// should be shown or hidden. |
| @discoverable |
| protocol ImeVisibilityService { |
| -> OnKeyboardVisibilityChanged(struct { |
| visible bool; |
| }); |
| }; |