Project: /_project.yaml Book: /_book.yaml

fuchsia.ui.input

PROTOCOLS

ImeService {:#ImeService}

Defined in fuchsia.ui.input/ime_service.fidl

The service provided by an IME

GetInputMethodEditor {:#GetInputMethodEditor}

Request

ShowKeyboard {:#ShowKeyboard}

Request

HideKeyboard {:#HideKeyboard}

Request

InjectInput {:#InjectInput}

Request

DispatchKey {:#DispatchKey}

Request

Response

ImeVisibilityService {:#ImeVisibilityService}

Defined in fuchsia.ui.input/ime_service.fidl

Onscreen keyboard containers connect to this to know when a keyboard should be shown or hidden.

OnKeyboardVisibilityChanged {:#OnKeyboardVisibilityChanged}

Response

InputDeviceRegistry {:#InputDeviceRegistry}

Defined in fuchsia.ui.input/input_device_registry.fidl

Service to receive input events.

Input devices can describe their capabilities using DeviceDescriptor and register themselves with the InputDeviceRegistry.

RegisterDevice {:#RegisterDevice}

Register a device with the capabilities described by DeviceDescriptor

Request

InputDevice {:#InputDevice}

Defined in fuchsia.ui.input/input_device_registry.fidl

DispatchReport {:#DispatchReport}

Dispatch an InputReport from the device token

Request

InputMethodEditor {:#InputMethodEditor}

Defined in fuchsia.ui.input/text_input.fidl

A interface for interacting with a text input control.

SetKeyboardType {:#SetKeyboardType}

Request

SetState {:#SetState}

Request

InjectInput {:#InjectInput}

Request

Show {:#Show}

Request

Hide {:#Hide}

Request

InputMethodEditorClient {:#InputMethodEditorClient}

Defined in fuchsia.ui.input/text_input.fidl

An interface to receive information from TextInputService.

DidUpdateState {:#DidUpdateState}

Request

OnAction {:#OnAction}

Request

ImeService {:#ImeService}

Defined in fuchsia.ui.input/ime_service.fidl

The service provided by an IME

GetInputMethodEditor {:#GetInputMethodEditor}

Request

ShowKeyboard {:#ShowKeyboard}

Request

HideKeyboard {:#HideKeyboard}

Request

InjectInput {:#InjectInput}

Request

DispatchKey {:#DispatchKey}

Request

Response

ImeVisibilityService {:#ImeVisibilityService}

Defined in fuchsia.ui.input/ime_service.fidl

Onscreen keyboard containers connect to this to know when a keyboard should be shown or hidden.

OnKeyboardVisibilityChanged {:#OnKeyboardVisibilityChanged}

Response

InputDeviceRegistry {:#InputDeviceRegistry}

Defined in fuchsia.ui.input/input_device_registry.fidl

Service to receive input events.

Input devices can describe their capabilities using DeviceDescriptor and register themselves with the InputDeviceRegistry.

RegisterDevice {:#RegisterDevice}

Register a device with the capabilities described by DeviceDescriptor

Request

InputDevice {:#InputDevice}

Defined in fuchsia.ui.input/input_device_registry.fidl

DispatchReport {:#DispatchReport}

Dispatch an InputReport from the device token

Request

InputMethodEditor {:#InputMethodEditor}

Defined in fuchsia.ui.input/text_input.fidl

A interface for interacting with a text input control.

SetKeyboardType {:#SetKeyboardType}

Request

SetState {:#SetState}

Request

InjectInput {:#InjectInput}

Request

Show {:#Show}

Request

Hide {:#Hide}

Request

InputMethodEditorClient {:#InputMethodEditorClient}

Defined in fuchsia.ui.input/text_input.fidl

An interface to receive information from TextInputService.

DidUpdateState {:#DidUpdateState}

Request

OnAction {:#OnAction}

Request

STRUCTS

SendKeyboardInputCmd {:#SendKeyboardInputCmd}

Defined in fuchsia.ui.input/commands.fidl

SendPointerInputCmd {:#SendPointerInputCmd}

Defined in fuchsia.ui.input/commands.fidl

SetHardKeyboardDeliveryCmd {:#SetHardKeyboardDeliveryCmd}

Defined in fuchsia.ui.input/commands.fidl

Typically, clients should receive text inputs from an IME.

For cases where no IME mediation is desired (such as a game application), this command requests Scenic to deliver hard keyboard events to the client.

By default, Scenic will not deliver hard keyboard events to a client.

SetParallelDispatchCmd {:#SetParallelDispatchCmd}

Defined in fuchsia.ui.input/commands.fidl

Typically, clients that participate in the hit test should receive input events in parallel. This behavior is required for gesture disambiguation.

This command, typically set by the root presenter, allows disabling parallel dispatch; it is part of the input v2 transition work.

KeyboardEvent {:#KeyboardEvent}

Defined in fuchsia.ui.input/input_events.fidl

KeyboardEvent represents event generated by a user's interaction with a keyboard.

Those events are triggered by distinct pressed state changes of the keys.

The state transitions should be as follows: PRESSED -> (REPEAT ->) RELEASED or PRESSED -> (REPEAT ->) CANCELLED

The input system will repeat those events automatically when a code_point is available.

DEPRECATED: Will be removed in favor of fuchsia.ui.input.KeyEvent.

If there is no unicode code point, this value is zero.

PointerEvent {:#PointerEvent}

Defined in fuchsia.ui.input/input_events.fidl

Pointers represent raw data about the user's interaction with the screen.

The state transitions should be as follows: ADD (-> HOVER) -> DOWN -> MOVE -> UP (-> HOVER) -> REMOVE

At any point after the initial ADD, a transition to CANCEL is also possible.

FocusEvent {:#FocusEvent}

Defined in fuchsia.ui.input/input_events.fidl

Range {:#Range}

Defined in fuchsia.ui.input/input_reports.fidl

RangeF {:#RangeF}

Defined in fuchsia.ui.input/input_reports.fidl

Axis {:#Axis}

Defined in fuchsia.ui.input/input_reports.fidl

AxisF {:#AxisF}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsDescriptor {:#MediaButtonsDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

KeyboardDescriptor {:#KeyboardDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

KeyboardReport {:#KeyboardReport}

Defined in fuchsia.ui.input/input_reports.fidl

MouseDescriptor {:#MouseDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

MouseReport {:#MouseReport}

Defined in fuchsia.ui.input/input_reports.fidl

StylusDescriptor {:#StylusDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

StylusReport {:#StylusReport}

Defined in fuchsia.ui.input/input_reports.fidl

TouchscreenDescriptor {:#TouchscreenDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

Touch {:#Touch}

Defined in fuchsia.ui.input/input_reports.fidl

TouchscreenReport {:#TouchscreenReport}

Defined in fuchsia.ui.input/input_reports.fidl

SensorDescriptor {:#SensorDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsReport {:#MediaButtonsReport}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsReport describes the media buttons event delivered from the event stream. Each bool in the report represents a single button where true means the button is being pressed. A single report should be sent on every state change.

DeviceInfo {:#DeviceInfo}

Defined in fuchsia.ui.input/input_reports.fidl

DeviceDescriptor {:#DeviceDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

InputReport {:#InputReport}

Defined in fuchsia.ui.input/input_reports.fidl

TextRange {:#TextRange}

Defined in fuchsia.ui.input/text_editing.fidl

A range of characters in a string of text. Although strings in FIDL's wire format are UTF-8 encoded, these indices are measured in UTF-16 code units for legacy reasons. These text input APIs will eventually be replaced by fuchsia.ui.text, which uses code points instead.

If start and end are both -1, the text range is empty.

If start and end are both -1, the text range is empty.

TextSelection {:#TextSelection}

Defined in fuchsia.ui.input/text_editing.fidl

A range of text that represents a selection. Although strings in FIDL's wire format are UTF-8 encoded, these indices are measured in UTF-16 code units for legacy reasons. These text input APIs will eventually be replaced by fuchsia.ui.text, which uses code points instead.

Text selection is always directional. Direction should be determined by comparing base and extent.

Might be larger than, smaller than, or equal to extent.

When the user uses the arrow keys to adjust the selection, this is the value that changes. Similarly, if the current theme paints a caret on one side of the selection, this is the location at which to paint the caret.

Might be larger than, smaller than, or equal to base.

TextInputState {:#TextInputState}

Defined in fuchsia.ui.input/text_input.fidl

The current text, selection, and composing state for editing a run of text.

SendKeyboardInputCmd {:#SendKeyboardInputCmd}

Defined in fuchsia.ui.input/commands.fidl

SendPointerInputCmd {:#SendPointerInputCmd}

Defined in fuchsia.ui.input/commands.fidl

SetHardKeyboardDeliveryCmd {:#SetHardKeyboardDeliveryCmd}

Defined in fuchsia.ui.input/commands.fidl

Typically, clients should receive text inputs from an IME.

For cases where no IME mediation is desired (such as a game application), this command requests Scenic to deliver hard keyboard events to the client.

By default, Scenic will not deliver hard keyboard events to a client.

SetParallelDispatchCmd {:#SetParallelDispatchCmd}

Defined in fuchsia.ui.input/commands.fidl

Typically, clients that participate in the hit test should receive input events in parallel. This behavior is required for gesture disambiguation.

This command, typically set by the root presenter, allows disabling parallel dispatch; it is part of the input v2 transition work.

KeyboardEvent {:#KeyboardEvent}

Defined in fuchsia.ui.input/input_events.fidl

KeyboardEvent represents event generated by a user's interaction with a keyboard.

Those events are triggered by distinct pressed state changes of the keys.

The state transitions should be as follows: PRESSED -> (REPEAT ->) RELEASED or PRESSED -> (REPEAT ->) CANCELLED

The input system will repeat those events automatically when a code_point is available.

DEPRECATED: Will be removed in favor of fuchsia.ui.input.KeyEvent.

If there is no unicode code point, this value is zero.

PointerEvent {:#PointerEvent}

Defined in fuchsia.ui.input/input_events.fidl

Pointers represent raw data about the user's interaction with the screen.

The state transitions should be as follows: ADD (-> HOVER) -> DOWN -> MOVE -> UP (-> HOVER) -> REMOVE

At any point after the initial ADD, a transition to CANCEL is also possible.

FocusEvent {:#FocusEvent}

Defined in fuchsia.ui.input/input_events.fidl

Range {:#Range}

Defined in fuchsia.ui.input/input_reports.fidl

RangeF {:#RangeF}

Defined in fuchsia.ui.input/input_reports.fidl

Axis {:#Axis}

Defined in fuchsia.ui.input/input_reports.fidl

AxisF {:#AxisF}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsDescriptor {:#MediaButtonsDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

KeyboardDescriptor {:#KeyboardDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

KeyboardReport {:#KeyboardReport}

Defined in fuchsia.ui.input/input_reports.fidl

MouseDescriptor {:#MouseDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

MouseReport {:#MouseReport}

Defined in fuchsia.ui.input/input_reports.fidl

StylusDescriptor {:#StylusDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

StylusReport {:#StylusReport}

Defined in fuchsia.ui.input/input_reports.fidl

TouchscreenDescriptor {:#TouchscreenDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

Touch {:#Touch}

Defined in fuchsia.ui.input/input_reports.fidl

TouchscreenReport {:#TouchscreenReport}

Defined in fuchsia.ui.input/input_reports.fidl

SensorDescriptor {:#SensorDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsReport {:#MediaButtonsReport}

Defined in fuchsia.ui.input/input_reports.fidl

MediaButtonsReport describes the media buttons event delivered from the event stream. Each bool in the report represents a single button where true means the button is being pressed. A single report should be sent on every state change.

DeviceInfo {:#DeviceInfo}

Defined in fuchsia.ui.input/input_reports.fidl

DeviceDescriptor {:#DeviceDescriptor}

Defined in fuchsia.ui.input/input_reports.fidl

InputReport {:#InputReport}

Defined in fuchsia.ui.input/input_reports.fidl

TextRange {:#TextRange}

Defined in fuchsia.ui.input/text_editing.fidl

A range of characters in a string of text. Although strings in FIDL's wire format are UTF-8 encoded, these indices are measured in UTF-16 code units for legacy reasons. These text input APIs will eventually be replaced by fuchsia.ui.text, which uses code points instead.

If start and end are both -1, the text range is empty.

If start and end are both -1, the text range is empty.

TextSelection {:#TextSelection}

Defined in fuchsia.ui.input/text_editing.fidl

A range of text that represents a selection. Although strings in FIDL's wire format are UTF-8 encoded, these indices are measured in UTF-16 code units for legacy reasons. These text input APIs will eventually be replaced by fuchsia.ui.text, which uses code points instead.

Text selection is always directional. Direction should be determined by comparing base and extent.

Might be larger than, smaller than, or equal to extent.

When the user uses the arrow keys to adjust the selection, this is the value that changes. Similarly, if the current theme paints a caret on one side of the selection, this is the location at which to paint the caret.

Might be larger than, smaller than, or equal to base.

TextInputState {:#TextInputState}

Defined in fuchsia.ui.input/text_input.fidl

The current text, selection, and composing state for editing a run of text.

ENUMS

KeyboardEventPhase {:#KeyboardEventPhase}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

PointerEventType {:#PointerEventType}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

PointerEventPhase {:#PointerEventPhase}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

For example, the pointer might be hovering above the device, having not yet made contact with the surface of the device.

For MOUSE devices, this is triggered when the primary button is pressed down to emulate a touch on the screen.

For MOUSE devices, this is triggered when the primary button is released.

For example, the pointer might have drifted out of the device's hover detection range or might have been disconnected from the system entirely.

AxisScale {:#AxisScale}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

SensorType {:#SensorType}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

SensorLocation {:#SensorLocation}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

TextAffinity {:#TextAffinity}

Type: uint32

Defined in fuchsia.ui.input/text_editing.fidl

Whether a TextPosition is visually upstream or downstream of its offset.

For example, when a text position exists at a line break, a single offset has two visual positions, one prior to the line break (at the end of the first line) and one after the line break (at the start of the second line). A text affinity disambiguates between those cases. (Something similar happens with between runs of bidirectional text.)

For example, if the offset of the text position is a line break, the position represents the end of the first line.

For example, if the offset of the text position is a line break, the position represents the start of the second line.

KeyboardType {:#KeyboardType}

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

InputMethodAction {:#InputMethodAction}

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

KeyboardEventPhase {:#KeyboardEventPhase}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

PointerEventType {:#PointerEventType}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

PointerEventPhase {:#PointerEventPhase}

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

For example, the pointer might be hovering above the device, having not yet made contact with the surface of the device.

For MOUSE devices, this is triggered when the primary button is pressed down to emulate a touch on the screen.

For MOUSE devices, this is triggered when the primary button is released.

For example, the pointer might have drifted out of the device's hover detection range or might have been disconnected from the system entirely.

AxisScale {:#AxisScale}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

SensorType {:#SensorType}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

SensorLocation {:#SensorLocation}

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

TextAffinity {:#TextAffinity}

Type: uint32

Defined in fuchsia.ui.input/text_editing.fidl

Whether a TextPosition is visually upstream or downstream of its offset.

For example, when a text position exists at a line break, a single offset has two visual positions, one prior to the line break (at the end of the first line) and one after the line break (at the start of the second line). A text affinity disambiguates between those cases. (Something similar happens with between runs of bidirectional text.)

For example, if the offset of the text position is a line break, the position represents the end of the first line.

For example, if the offset of the text position is a line break, the position represents the start of the second line.

KeyboardType {:#KeyboardType}

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

InputMethodAction {:#InputMethodAction}

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

TABLES

MediaButtonsEvent {:#MediaButtonsEvent}

Defined in fuchsia.ui.input/input_events.fidl

MediaButtonsEvent {:#MediaButtonsEvent}

Defined in fuchsia.ui.input/input_events.fidl

UNIONS

Command {:#Command}

Defined in fuchsia.ui.input/commands.fidl

InputEvent {:#InputEvent}

Defined in fuchsia.ui.input/input_events.fidl

This union does not include MediaButtonsEvent because it's processed differently.

SensorReport {:#SensorReport}

Defined in fuchsia.ui.input/input_reports.fidl

Command {:#Command}

Defined in fuchsia.ui.input/commands.fidl

InputEvent {:#InputEvent}

Defined in fuchsia.ui.input/input_events.fidl

This union does not include MediaButtonsEvent because it's processed differently.

SensorReport {:#SensorReport}

Defined in fuchsia.ui.input/input_reports.fidl

CONSTANTS