blob: 59056b4e2981a08e050063e29145bca3bee029c0 [file] [log] [blame]
// 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;
using fuchsia.ui.input2;
/// The service provided by an IME
[Discoverable]
protocol ImeService {
GetInputMethodEditor(KeyboardType keyboard_type,
InputMethodAction action,
TextInputState initial_state,
InputMethodEditorClient client,
request<InputMethodEditor> editor);
ShowKeyboard();
HideKeyboard();
// DEPRECATED: Instead, use `fuchsia.ui.input3.KeyEventInjector`.
// TODO(fxbug.dev/70474): remove this method.
// TODO(fxbug.dev/47689): Work is ongoing to remove all input2 code.
DispatchKey(fuchsia.ui.input2.KeyEvent event) -> (bool handled);
};
/// Onscreen keyboard containers connect to this to know when a keyboard
/// should be shown or hidden.
[Discoverable]
protocol ImeVisibilityService {
-> OnKeyboardVisibilityChanged(bool visible);
};