class KeyEventInjector
Defined at line 2259 of file fidling/gen/sdk/fidl/fuchsia.ui.input3/fuchsia.ui.input3/hlcpp/fuchsia/ui/input3/cpp/fidl.h
Provides the ability to inject `KeyEvent`s into the keyboard subsystem.
# Roles
This protocol will typically be:
* Implemented by platform components which process and deliver keyboard
events.
* Consumed by components which originiate keyboard events. E.g.
an on-screen keyboard, or the Session Framework Input Pipeline.
# Related protocols
This protocol should be using in preference to legacy protocols which provide
similar functionality. Specifically, this means this protocol should be preferred
over
* `fuchsia.ui.input.ImeService` which provides `InjectInput()`, `DispatchKey()`,
and `DispatchKey3()`
* `fuchsia.ui.input.InputMethodEditor`, which provides `InjectInput()` and
`DispatchKey3()`
# Notes
Products should take care to limit access to this protocol, as events injected
with this protocol are indistinguishable from those coming from physical devices.
Public Members
static const char[] Name_
Public Methods
void ~KeyEventInjector ()
void Inject (::fuchsia::ui::input3::KeyEvent key_event, InjectCallback callback)
Inject an event into the keyboard subsystem.
# Returns
* `HANDLED` if the keyboard subsystem delivered the event to a consumer,
and the consumer reported that it `HANDLED` the event
* `NOT_HANDLED` if the keyboard subsystem did not deliever the event to
any consumers, or no consumer reported that it `HANDLED` the event.