pub enum Event {
    Keymap {
        format: KeymapFormat,
        fd: RawFd,
        size: u32,
    },
    Enter {
        serial: u32,
        surface: Resource<WlSurface>,
        keys: Vec<u8>,
    },
    Leave {
        serial: u32,
        surface: Resource<WlSurface>,
    },
    Key {
        serial: u32,
        time: u32,
        key: u32,
        state: KeyState,
    },
    Modifiers {
        serial: u32,
        mods_depressed: u32,
        mods_latched: u32,
        mods_locked: u32,
        group: u32,
    },
    RepeatInfo {
        rate: i32,
        delay: i32,
    },
}

Variants

Keymap

Fields

format: KeymapFormat
fd: RawFd
size: u32

keyboard mapping

This event provides a file descriptor to the client which can be memory-mapped to provide a keyboard mapping description.

Enter

Fields

serial: u32
surface: Resource<WlSurface>
keys: Vec<u8>

enter event

Notification that this seat’s keyboard focus is on a certain surface.

Leave

Fields

serial: u32
surface: Resource<WlSurface>

leave event

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

Key

Fields

serial: u32
time: u32
key: u32
state: KeyState

key event

A key was pressed or released. The time argument is a timestamp with millisecond granularity, with an undefined base.

Modifiers

Fields

serial: u32
mods_depressed: u32
mods_latched: u32
mods_locked: u32
group: u32

modifier and group state

Notifies clients that the modifier and/or group state has changed, and it should update its local state.

RepeatInfo

Fields

rate: i32
delay: i32

repeat rate and delay

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

Only available since version 4 of the interface

Trait Implementations

Wire representation of this MessageGroup
The wrapper type for ObjectMap allowing the mapping of Object and NewId arguments to the object map during parsing. Read more
Whether this message is a destructor Read more
The opcode of this message
Retrieve the child Object associated with this message if any
Construct a message from its raw representation
Turn this message into its raw representation

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more
Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more
Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more
Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.