fuchsia.ui.input

Added: 7

PROTOCOLS

DeviceIterator

Defined in fuchsia.ui.input/device_listener.fidl

Protocol for iterating over the initial set of active devices.

This iterator is returned upon registering a listener and is used to bootstrap the client's state with the devices that are already present.

Added: HEAD

GetNext

Returns the next batch of active devices.

Returns an empty vector when all existing devices have been iterated through. The client should then close this channel and rely on the DeviceListener for subsequent events.

Request

<EMPTY>

Response

NameType
devices vector<DeviceEvent>

DeviceListener

Defined in fuchsia.ui.input/device_listener.fidl

Callback protocol implemented by clients to receive live device change events.

Events are sent to this listener only for changes occurring after registration is complete.

Added: HEAD

OnDeviceChanged

Called when a device change event occurs.

Request

NameType
event DeviceEvent

DeviceListenerRegistry

Defined in fuchsia.ui.input/device_listener.fidl

Registry service that allows clients to monitor input device changes.

Added: HEAD

RegisterListener

Registers a listener to receive future device change events.

Returns a DeviceIterator which the client MUST use to drain the list of devices that were already active at the time of registration.

Request

NameType
listener client_end:DeviceListener

Response

NameType
iterator client_end:DeviceIterator

ImeService

Defined in fuchsia.ui.input/ime_service.fidl

The service provided by an IME

GetInputMethodEditor

Request

NameType
keyboard_type KeyboardType
action InputMethodAction
initial_state TextInputState
client client_end:InputMethodEditorClient
editor server_end:InputMethodEditor

HideKeyboard

Request

<EMPTY>

ShowKeyboard

Request

<EMPTY>

InputDevice

Defined in fuchsia.ui.input/input_device_registry.fidl

Deprecated: 13

DispatchReport

Dispatch an InputReport from the device token

Request

NameType
report InputReport

InputMethodEditor

Defined in fuchsia.ui.input/text_input.fidl

A interface for interacting with a text input control.

DispatchKey3

Deprecated: 8

Request

NameType
event fuchsia.ui.input3/KeyEvent

Response

NameType
handled bool

Hide

Deprecated: 13

Request

<EMPTY>

InjectInput

Deprecated: 8

Request

NameType
event InputEvent

SetKeyboardType

Request

NameType
keyboard_type KeyboardType

SetState

Request

NameType
state TextInputState

Show

Deprecated: 13

Request

<EMPTY>

InputMethodEditorClient

Defined in fuchsia.ui.input/text_input.fidl

An interface to receive information from TextInputService.

DidUpdateState

Request

NameType
state TextInputState
event InputEvent?

OnAction

Request

NameType
action InputMethodAction

STRUCTS

Axis

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
range Range No default
resolution int32 1
scale AxisScale AxisScale.LINEAR

AxisF

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
range RangeF No default
resolution float32 1
scale AxisScale AxisScale.LINEAR

DeviceInfo

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
vendor_id uint32 No default
product_id uint32 No default
version uint32 No default
name string No default

FocusEvent

Defined in fuchsia.ui.input/input_events.fidl

Deprecated: 10

FieldTypeDescriptionDefault
event_time uint64

Time the event was delivered. The time is in nanoseconds and corresponds to the monotonic time as determined by the zx_clock_get_monotonic syscall.

No default
focused bool

Whether the view has gained input focused or not.

No default

InputReport

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
event_time uint64 No default
keyboard KeyboardReport? No default
media_buttons MediaButtonsReport? No default
mouse MouseReport? No default
stylus StylusReport? No default
touchscreen TouchscreenReport? No default
sensor SensorReport? No default
trace_id uint64 0

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.

Deprecated: 13

FieldTypeDescriptionDefault
event_time uint64

Time the event was delivered. The time is in nanoseconds and corresponds to the monotonic time as determined by the zx_clock_get_monotonic syscall.

No default
device_id uint32 No default
phase KeyboardEventPhase No default
hid_usage uint32

Keyboard HID Usage See https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf

No default
code_point uint32

The unicode code point represented by this key event, if any. Dead keys are represented as Unicode combining characters.

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

No default
modifiers uint32

Key modifiers as defined by the different kModifier constants such as kModifierCapsLock currently pressed

No default

KeyboardReport

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
pressed_keys vector<uint32> No default

MediaButtonsDescriptor

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
buttons uint32 No default

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.

Deprecated: 13

FieldTypeDescriptionDefault
volume_up bool No default
volume_down bool No default
mic_mute bool No default
reset bool No default
pause bool No default
camera_disable bool No default

MouseReport

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
rel_x int32 No default
rel_y int32 No default
rel_hscroll int32 No default
rel_vscroll int32 No default
pressed_buttons uint32 No default

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.

Deprecated: 10

FieldTypeDescriptionDefault
event_time uint64

Time the event was delivered. The time is in nanoseconds and corresponds to the monotonic time as determined by the zx_clock_get_monotonic syscall.

No default
device_id uint32 No default
pointer_id uint32 No default
type PointerEventType No default
phase PointerEventPhase No default
x float32

x and y are in the coordinate system of the View.

No default
y float32 No default
radius_major float32 0
radius_minor float32 0
buttons uint32

Currently pressed buttons as defined the kButton constants such as kMousePrimaryButton

No default

Range

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
min int32 No default
max int32 No default

RangeF

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
min float32 No default
max float32 No default

SendKeyboardInputCmd

Defined in fuchsia.ui.input/commands.fidl

Deprecated: 10

FieldTypeDescriptionDefault
compositor_id uint32 No default
keyboard_event KeyboardEvent No default

SendPointerInputCmd

Defined in fuchsia.ui.input/commands.fidl

Deprecated: 10

FieldTypeDescriptionDefault
compositor_id uint32 No default
pointer_event PointerEvent No default

SensorAxis

Defined in fuchsia.ui.input/device_descriptor.fidl

A SensorAxis is a normal Axis with an additional SensorType to describe what the axis is measuring.

Added: HEAD

FieldTypeDescriptionDefault
axis fuchsia.input/Axis No default
type SensorType No default

SetHardKeyboardDeliveryCmd

Defined in fuchsia.ui.input/commands.fidl

Deprecated: 10

FieldTypeDescriptionDefault
delivery_request bool No default

SetParallelDispatchCmd

Defined in fuchsia.ui.input/commands.fidl

Deprecated: 10

FieldTypeDescriptionDefault
parallel_dispatch bool No default

StylusDescriptor

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
x Axis No default
y Axis No default
pressure Axis? No default
is_invertible bool false
buttons uint32 No default

StylusReport

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
x int32 No default
y int32 No default
pressure uint32 No default
is_in_contact bool No default
in_range bool No default
is_inverted bool No default
pressed_buttons uint32 No default

TextInputState

Defined in fuchsia.ui.input/text_input.fidl

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

FieldTypeDescriptionDefault
revision uint32

Current state revision to avoid race conditions.

No default
text string

The current text being edited.

No default
selection TextSelection

The range of text that is currently selected.

No default
composing TextRange

The range of text that is still being composed.

No default

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.

FieldTypeDescriptionDefault
start int64

The index of the first UTF-16 code unit in the range.

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

-1
end int64

The next index after the last UTF-16 code unit in this range.

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

-1

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.

FieldTypeDescriptionDefault
base int64

The offset at which the selection originates, as measured in UTF-16 code units.

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

No default
extent int64

The offset at which the selection terminates, as measured in UTF-16 code units.

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.

No default
affinity TextAffinity

If the text range is collapsed and has more than one visual location (e.g., occurs at a line break), which of the two locations to use when painting the caret.

No default

Touch

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
finger_id uint32 No default
x int32 No default
y int32 No default
width uint32 No default
height uint32 No default

TouchscreenDescriptor

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
x Axis No default
y Axis No default
max_finger_id uint32 No default

TouchscreenReport

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

FieldTypeDescriptionDefault
touches vector<Touch> No default

ENUMS

Action flexible

Type: uint32

Defined in fuchsia.ui.input/device_listener.fidl

Describes the type of change that occurred to an input device.

Added: HEAD

NameValueDescription
1

A new device was added.

2

An existing device was updated (e.g., properties changed).

3

A device was removed.

AxisScale flexible

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

NameValueDescription
0
1

InputMethodAction flexible

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

Determines what happens if the "action" key is pressed on the keyboard, typically would either be the "Enter" key on a physical keyboard, or an action button on a virtual keyboard, which is usually placed where Enter would be, but with a custom label.

NameValueDescription
0

The method action was not specified at all.

1

No special action is requested.

2

The action is "Go", e.g. execute a command.

3

The action is to invoke a search.

4

The action is to invoke "send", e.g. if this is an email or a SMS message.

5

The action is to move to the next field in the focus sequence.

6

The action is to end the text editing.

7

The action is to move to the previous field in the focus sequence.

8

Pressing the action key inserts a new line into the text field. In contrast to other values, which all stop editing and invoke a specific action.

Added: 8

KeyboardEventPhase flexible

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

Deprecated: 13

NameValueDescription
0

When key is pressed down.

1

When key is released.

2

This key PRESSED is not directed to this input client anymore.

3

Whether this is an automatically generated key repeat

KeyboardType flexible

Type: uint32

Defined in fuchsia.ui.input/text_input.fidl

Requests a specific keyboard type from the text editing subsystem.

This is most relevant for virtual keyboards which have some leeway in how the keyboard is presented to the user, as well as which input is acceptable.

For example, a NUMBER keyboard type may only allow decimal numbers to be entered. In addition, a virtual keyboard might only show a numeric keypad for text entry.

NameValueDescription
0

Single-line text fields only. Use MULTILINE below for multiline text.

1

A text field intended for entering numbers only.

2

A text field for entering phone numbers only (e.g. digits, limited punctuation, perhaps some validation).

3

A text field for entering date and time. For example, may have a calendar widget on the side, to aid in date time entry.

4

Multi-line text.

Added: 8

LedType flexible

Type: uint32

Defined in fuchsia.ui.input/device_descriptor.fidl

An LedType represents an LED on a device that can be turned on or off.

Added: HEAD

NameValueDescription
1
2
3
4
5

PointerEventPhase strict

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

Deprecated: 10

NameValueDescription
0

The device has started tracking the pointer.

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

1

The pointer has moved with respect to the device while not in contact with the device.

2

The pointer has made contact with the device.

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

3

The pointer has moved with respect to the device while in contact with the device.

4

The pointer has stopped making contact with the device.

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

5

The device is no longer tracking the pointer.

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

6

The input from the pointer is no longer directed towards this receiver.

PointerEventType strict

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

Deprecated: 10

NameValueDescription
0

A touch-based pointer device.

1

A pointer device with a stylus.

2

A pointer device with a stylus that has been inverted.

3

A pointer device without a stylus.

SensorLocation flexible

Type: uint32

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13

NameValueDescription
0
1
2

SensorType flexible

Type: uint32

Defined in fuchsia.ui.input/device_descriptor.fidl

Each sensor value has a corresponding SensorType, which explains what the value is measuring in the world.

Added: HEAD

NameValueDescription
1
2
3
4
5
6
7
8
9
10
11
12
13

TextAffinity strict

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.)

We do not expect new values to be added to this enum.

NameValueDescription
0

The position has affinity for the upstream side of the text position.

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

1

The position has affinity for the downstream side of the text position.

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

TouchButton flexible

Type: uint32

Defined in fuchsia.ui.input/input_events.fidl

Added: 28

NameValueDescription
1
2

Represents a swipe up gesture on the touchscreen.

Added: 31
3

Represents a swipe left gesture on the touchscreen.

Added: 31
4

Represents a swipe right gesture on the touchscreen.

Added: 31
5

Represents a swipe down gesture on the touchscreen.

Added: 31

TouchType flexible

Type: uint32

Defined in fuchsia.ui.input/device_descriptor.fidl

The device type from which the touch originated.

Added: HEAD

NameValueDescription
1
2

TABLES

ConsumerControlDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

A Fuchsia ConsumerControl represents a device that changes values on the host.

Added: HEAD

OrdinalFieldTypeDescription
input ConsumerControlInputDescriptor

ConsumerControlInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the input report that will be sent from the ConsumerControl device to the host.

Added: HEAD

OrdinalFieldTypeDescription
buttons vector<fuchsia.input/ConsumerControlButton>:255

ContactInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

ContactInputDescriptor describes the fields associated with a touch on a touch device.

Added: HEAD

OrdinalFieldTypeDescription
position_x fuchsia.input/Axis
position_y fuchsia.input/Axis
pressure fuchsia.input/Axis
contact_width fuchsia.input/Axis
contact_height fuchsia.input/Axis

DeviceDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

DeviceDescriptor describes a physical input device.

Added: HEAD

OrdinalFieldTypeDescription
device_information DeviceInformation

Identifies the physical device.

mouse MouseDescriptor

Describes the mouse part of the device.

sensor SensorDescriptor

Describes the sensor part of the device.

touch TouchDescriptor

Describes the touch part of the device.

keyboard KeyboardDescriptor

Describes the keyboard part of the device.

consumer_control ConsumerControlDescriptor

Describes the consumer control part of the device.

DeviceEvent

Defined in fuchsia.ui.input/device_listener.fidl

Represents an event associated with a change in the input devices.

Added: HEAD

OrdinalFieldTypeDescription
action Action

The action that triggered this event.

device_id uint32

The unique identifier of the device.

descriptor DeviceDescriptor

The descriptor containing detailed information about the device.

DeviceInformation

Defined in fuchsia.ui.input/device_descriptor.fidl

DeviceInformation provides more information about the device and lets a client distinguish between devices (e.g between two touchscreens that come from different vendors).

Added: HEAD

OrdinalFieldTypeDescription
vendor_id uint32

Required.

product_id uint32

Required.

version uint32

Optional.

polling_rate zx/Duration

The time interval between each poll of the device.

Optional.

manufacturer_name string:256

Human-readable name of the manufacturer. Optional. Must be non-empty if present.

product_name string:256

Human-readable name of the product. Optional. Must be non-empty if present.

serial_number string:256

Serial number of the device. Optional. Must be non-empty if present.

KeyboardDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

The capabilities of a keyboard device.

Added: HEAD

OrdinalFieldTypeDescription
input KeyboardInputDescriptor
output KeyboardOutputDescriptor

KeyboardInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the input report that will be sent from the keyboard to the device.

Added: HEAD

OrdinalFieldTypeDescription
keys vector<fuchsia.input/Key>:256

The list of keys that this keyboard contains.

KeyboardOutputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the output report that can be sent to the keyboard.

Added: HEAD

OrdinalFieldTypeDescription
leds vector<LedType>:256

The list of keyboard LEDs that can be toggled.

MediaButtonsEvent resource

Defined in fuchsia.ui.input/input_events.fidl

Added: HEAD

OrdinalFieldTypeDescription
volume int8
mic_mute bool
pause bool
camera_disable bool
power bool
function bool
device_id uint32
wake_lease handle<eventpair>

Optional wake lease for power baton passing.

trace_flow_id uint64

Optional trace flow ID to connect the event flow.

MouseDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

The capabilities of a mouse device.

Added: HEAD

OrdinalFieldTypeDescription
input MouseInputDescriptor

Describes the input capabilities of the device.

MouseInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the input report that will be sent from the mouse to the device.

Added: HEAD

OrdinalFieldTypeDescription
movement_x fuchsia.input/Axis

The range of relative X movement.

movement_y fuchsia.input/Axis

The range of relative Y movement.

scroll_v fuchsia.input/Axis

The range of relative vertical scroll.

scroll_h fuchsia.input/Axis

The range of relative horizontal scroll.

buttons vector<uint8>:32

IDs of the mouse buttons.

position_x fuchsia.input/Axis

The range of the position of X.

position_y fuchsia.input/Axis

The range of the position of Y.

SensorDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

The capabilities of a sensor device.

Added: HEAD

OrdinalFieldTypeDescription
input SensorInputDescriptor

SensorInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the input report that will be sent from the sensor to the device.

Added: HEAD

OrdinalFieldTypeDescription
values vector<SensorAxis>:100

TouchButtonsEvent resource

Defined in fuchsia.ui.input/input_events.fidl

Added: HEAD

OrdinalFieldTypeDescription
event_time zx/InstantMono
device_info TouchDeviceInfo
pressed_buttons vector<TouchButton>
wake_lease handle<eventpair>

Optional wake lease for power baton passing.

trace_flow_id uint64

Optional trace flow ID to connect the event flow.

TouchDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

The capabilities of a touch device.

Added: HEAD

OrdinalFieldTypeDescription
input TouchInputDescriptor
feature TouchFeatureDescriptor

TouchDeviceInfo

Defined in fuchsia.ui.input/input_events.fidl

Information about a device that issues touch event streams.

Added: 28

OrdinalFieldTypeDescription
id uint32

An identifier for the touch device that issues touch events. Required.

TouchFeatureDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the touchpad configuration's feature report.

Added: HEAD

OrdinalFieldTypeDescription
supports_input_mode bool
supports_selective_reporting bool

TouchInputDescriptor

Defined in fuchsia.ui.input/device_descriptor.fidl

Describes the format of the input report that will be sent from the touch device to the host.

Added: HEAD

OrdinalFieldTypeDescription
contacts vector<ContactInputDescriptor>:10
max_contacts uint32
touch_type TouchType
buttons vector<TouchButton>:10

UNIONS

Command strict

Defined in fuchsia.ui.input/commands.fidl

Deprecated: 10
OrdinalVariantTypeDescription
send_keyboard_input SendKeyboardInputCmd
send_pointer_input SendPointerInputCmd
set_hard_keyboard_delivery SetHardKeyboardDeliveryCmd
set_parallel_dispatch SetParallelDispatchCmd

InputEvent strict

Defined in fuchsia.ui.input/input_events.fidl

OrdinalVariantTypeDescription
pointer PointerEvent
Deprecated: 10
keyboard KeyboardEvent
Deprecated: 13
focus FocusEvent
Deprecated: 10

SensorReport strict

Defined in fuchsia.ui.input/input_reports.fidl

Deprecated: 13
OrdinalVariantTypeDescription
vector array<int16, 3>
scalar uint16

CONSTANTS

NameValueTypeDescription
CONSUMER_CONTROL_MAX_NUM_BUTTONS fuchsia.input/CONSUMER_CONTROL_MAX_NUM_BUTTONS uint32
Added: HEAD
KEYBOARD_MAX_NUM_KEYS 256 uint32
Added: HEAD
KEYBOARD_MAX_NUM_LEDS 256 uint32
Added: HEAD
MAX_NAME_LENGTH 256 uint32
Added: HEAD
MOUSE_MAX_NUM_BUTTONS fuchsia.input/MOUSE_MAX_NUM_BUTTONS uint32
Added: HEAD
SENSOR_MAX_VALUES 100 uint32
Added: HEAD
TOUCH_MAX_CONTACTS fuchsia.input/TOUCH_MAX_CONTACTS uint32
Added: HEAD
TOUCH_MAX_NUM_BUTTONS fuchsia.input/TOUCH_MAX_NUM_BUTTONS uint32
Added: HEAD
kModifierAlt 96 uint32
Deprecated: 13
kModifierCapsLock 1 uint32
Deprecated: 13
kModifierControl 24 uint32
Deprecated: 13
kModifierLeftAlt 32 uint32
Deprecated: 13
kModifierLeftControl 8 uint32
Deprecated: 13
kModifierLeftShift 2 uint32
Deprecated: 13
kModifierLeftSuper 128 uint32
Deprecated: 13
kModifierNone 0 uint32

Keyboard modifiers

Deprecated: 13
kModifierRightAlt 64 uint32
Deprecated: 13
kModifierRightControl 16 uint32
Deprecated: 13
kModifierRightShift 4 uint32
Deprecated: 13
kModifierRightSuper 256 uint32
Deprecated: 13
kModifierShift 6 uint32
Deprecated: 13
kModifierSuper 384 uint32
Deprecated: 13