Interface WlKeyboardEventsV9
- All Superinterfaces:
WlKeyboardEvents,WlKeyboardEventsV2,WlKeyboardEventsV3,WlKeyboardEventsV4,WlKeyboardEventsV5,WlKeyboardEventsV6,WlKeyboardEventsV7,WlKeyboardEventsV8
The wl_keyboard interface represents one or more keyboards associated with a seat.
Each wl_keyboard has the following logical state:
- an active surface (possibly null), - the keys currently logically down, - the active modifiers, - the active group.
By default, the active surface is null, the keys currently logically down are empty, the active modifiers and the active group are 0.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidenter(WlKeyboardProxy emitter, int serial, WlSurfaceProxy surface, WlArray keys) enter eventvoidkey(WlKeyboardProxy emitter, int serial, int time, int key, int state) key eventvoidkeymap(WlKeyboardProxy emitter, int format, int fd, int size) keyboard mappingvoidleave(WlKeyboardProxy emitter, int serial, WlSurfaceProxy surface) leave eventvoidmodifiers(WlKeyboardProxy emitter, int serial, int modsDepressed, int modsLatched, int modsLocked, int group) modifier and group statevoidrepeatInfo(WlKeyboardProxy emitter, int rate, int delay) repeat rate and delay
-
Field Details
-
VERSION
static final int VERSION- See Also:
-
-
Method Details
-
keymap
keyboard mappingThis event provides a file descriptor to the client which can be memory-mapped in read-only mode to provide a keyboard mapping description.
From version 7 onwards, the fd must be mapped with MAP_PRIVATE by the recipient, as MAP_SHARED may fail.
- Specified by:
keymapin interfaceWlKeyboardEvents- Specified by:
keymapin interfaceWlKeyboardEventsV2- Specified by:
keymapin interfaceWlKeyboardEventsV3- Specified by:
keymapin interfaceWlKeyboardEventsV4- Specified by:
keymapin interfaceWlKeyboardEventsV5- Specified by:
keymapin interfaceWlKeyboardEventsV6- Specified by:
keymapin interfaceWlKeyboardEventsV7- Specified by:
keymapin interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.format- keymap formatfd- keymap file descriptorsize- keymap size, in bytes
-
enter
void enter(WlKeyboardProxy emitter, int serial, @Nonnull WlSurfaceProxy surface, @Nonnull WlArray keys) enter eventNotification that this seat's keyboard focus is on a certain surface.
The compositor must send the wl_keyboard.modifiers event after this event.
In the wl_keyboard logical state, this event sets the active surface to the surface argument and the keys currently logically down to the keys in the keys argument. The compositor must not send this event if the wl_keyboard already had an active surface immediately before this event.
- Specified by:
enterin interfaceWlKeyboardEvents- Specified by:
enterin interfaceWlKeyboardEventsV2- Specified by:
enterin interfaceWlKeyboardEventsV3- Specified by:
enterin interfaceWlKeyboardEventsV4- Specified by:
enterin interfaceWlKeyboardEventsV5- Specified by:
enterin interfaceWlKeyboardEventsV6- Specified by:
enterin interfaceWlKeyboardEventsV7- Specified by:
enterin interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.serial- serial number of the enter eventsurface- surface gaining keyboard focuskeys- the keys currently logically down
-
leave
leave eventNotification that this seat's keyboard focus is no longer on a certain surface.
The leave notification is sent before the enter notification for the new focus.
In the wl_keyboard logical state, this event resets all values to their defaults. The compositor must not send this event if the active surface of the wl_keyboard was not equal to the surface argument immediately before this event.
- Specified by:
leavein interfaceWlKeyboardEvents- Specified by:
leavein interfaceWlKeyboardEventsV2- Specified by:
leavein interfaceWlKeyboardEventsV3- Specified by:
leavein interfaceWlKeyboardEventsV4- Specified by:
leavein interfaceWlKeyboardEventsV5- Specified by:
leavein interfaceWlKeyboardEventsV6- Specified by:
leavein interfaceWlKeyboardEventsV7- Specified by:
leavein interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.serial- serial number of the leave eventsurface- surface that lost keyboard focus
-
key
key eventA key was pressed or released. The time argument is a timestamp with millisecond granularity, with an undefined base.
The key is a platform-specific key code that can be interpreted by feeding it to the keyboard mapping (see the keymap event).
If this event produces a change in modifiers, then the resulting wl_keyboard.modifiers event must be sent after this event.
In the wl_keyboard logical state, this event adds the key to the keys currently logically down (if the state argument is pressed) or removes the key from the keys currently logically down (if the state argument is released). The compositor must not send this event if the wl_keyboard did not have an active surface immediately before this event. The compositor must not send this event if state is pressed (resp. released) and the key was already logically down (resp. was not logically down) immediately before this event.
- Specified by:
keyin interfaceWlKeyboardEvents- Specified by:
keyin interfaceWlKeyboardEventsV2- Specified by:
keyin interfaceWlKeyboardEventsV3- Specified by:
keyin interfaceWlKeyboardEventsV4- Specified by:
keyin interfaceWlKeyboardEventsV5- Specified by:
keyin interfaceWlKeyboardEventsV6- Specified by:
keyin interfaceWlKeyboardEventsV7- Specified by:
keyin interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.serial- serial number of the key eventtime- timestamp with millisecond granularitykey- key that produced the eventstate- physical state of the key
-
modifiers
void modifiers(WlKeyboardProxy emitter, int serial, int modsDepressed, int modsLatched, int modsLocked, int group) modifier and group stateNotifies clients that the modifier and/or group state has changed, and it should update its local state.
The compositor may send this event without a surface of the client having keyboard focus, for example to tie modifier information to pointer focus instead. If a modifier event with pressed modifiers is sent without a prior enter event, the client can assume the modifier state is valid until it receives the next wl_keyboard.modifiers event. In order to reset the modifier state again, the compositor can send a wl_keyboard.modifiers event with no pressed modifiers.
In the wl_keyboard logical state, this event updates the modifiers and group.
- Specified by:
modifiersin interfaceWlKeyboardEvents- Specified by:
modifiersin interfaceWlKeyboardEventsV2- Specified by:
modifiersin interfaceWlKeyboardEventsV3- Specified by:
modifiersin interfaceWlKeyboardEventsV4- Specified by:
modifiersin interfaceWlKeyboardEventsV5- Specified by:
modifiersin interfaceWlKeyboardEventsV6- Specified by:
modifiersin interfaceWlKeyboardEventsV7- Specified by:
modifiersin interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.serial- serial number of the modifiers eventmodsDepressed- depressed modifiersmodsLatched- latched modifiersmodsLocked- locked modifiersgroup- keyboard layout
-
repeatInfo
repeat rate and delayInforms the client about the keyboard's repeat rate and delay.
This event is sent as soon as the wl_keyboard object has been created, and is guaranteed to be received by the client before any key press event.
Negative values for either rate or delay are illegal. A rate of zero will disable any repeating (regardless of the value of delay).
This event can be sent later on as well with a new value if necessary, so clients should continue listening for the event past the creation of wl_keyboard.
- Specified by:
repeatInfoin interfaceWlKeyboardEventsV4- Specified by:
repeatInfoin interfaceWlKeyboardEventsV5- Specified by:
repeatInfoin interfaceWlKeyboardEventsV6- Specified by:
repeatInfoin interfaceWlKeyboardEventsV7- Specified by:
repeatInfoin interfaceWlKeyboardEventsV8- Parameters:
emitter- The protocol object that emitted the event.rate- the rate of repeating keys in characters per seconddelay- delay in milliseconds since key down until repeating starts
-