Struct wayland_server::protocol::wl_keyboard::WlKeyboard
source · [−]pub struct WlKeyboard { /* private fields */ }Expand description
keyboard input device
The wl_keyboard interface represents one or more keyboards associated with a seat.
See also the Request enum for this interface.
Implementations
sourceimpl WlKeyboard
impl WlKeyboard
sourcepub fn keymap(&self, format: KeymapFormat, fd: RawFd, size: u32)
pub fn keymap(&self, format: KeymapFormat, fd: RawFd, size: u32)
keyboard mapping
This 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.
sourcepub fn enter(&self, serial: u32, surface: &WlSurface, keys: Vec<u8>)
pub fn enter(&self, serial: u32, surface: &WlSurface, keys: Vec<u8>)
enter event
Notification that this seat’s keyboard focus is on a certain surface.
The compositor must send the wl_keyboard.modifiers event after this event.
sourcepub fn leave(&self, serial: u32, surface: &WlSurface)
pub fn leave(&self, serial: u32, surface: &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.
After this event client must assume that all keys, including modifiers, are lifted and also it must stop key repeating if there’s some going on.
sourcepub fn key(&self, serial: u32, time: u32, key: u32, state: KeyState)
pub fn key(&self, 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.
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.
sourcepub fn modifiers(
&self,
serial: u32,
mods_depressed: u32,
mods_latched: u32,
mods_locked: u32,
group: u32
)
pub fn modifiers(
&self,
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.
sourcepub fn repeat_info(&self, rate: i32, delay: i32)
pub fn repeat_info(&self, 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.
Trait Implementations
sourceimpl Clone for WlKeyboard
impl Clone for WlKeyboard
sourcefn clone(&self) -> WlKeyboard
fn clone(&self) -> WlKeyboard
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for WlKeyboard
impl Debug for WlKeyboard
sourceimpl PartialEq<WlKeyboard> for WlKeyboard
impl PartialEq<WlKeyboard> for WlKeyboard
sourceimpl Resource for WlKeyboard
impl Resource for WlKeyboard
type Request = Request
type Event = Event
fn interface() -> &'static Interface
fn id(&self) -> ObjectId
fn version(&self) -> u32
fn data<U: 'static>(&self) -> Option<&U>
fn object_data(&self) -> Option<&Arc<dyn Any + Send + Sync>>
fn handle(&self) -> &WeakHandle
fn from_id(conn: &DisplayHandle, id: ObjectId) -> Result<Self, InvalidId>
fn send_event(&self, evt: Self::Event) -> Result<(), InvalidId>
fn parse_request(
conn: &DisplayHandle,
msg: Message<ObjectId>
) -> Result<(Self, Self::Request), DispatchError>
fn write_event(
&self,
conn: &DisplayHandle,
msg: Self::Event
) -> Result<Message<ObjectId>, InvalidId>
fn post_error(
&self,
dh: &DisplayHandle,
code: impl Into<u32>,
error: impl Into<String>
)
impl Eq for WlKeyboard
Auto Trait Implementations
impl !RefUnwindSafe for WlKeyboard
impl Send for WlKeyboard
impl Sync for WlKeyboard
impl Unpin for WlKeyboard
impl !UnwindSafe for WlKeyboard
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
sourcefn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
sourcefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
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
sourcefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read more
sourcefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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
sourceimpl<T> DowncastSync for T where
T: Any + Send + Sync,
impl<T> DowncastSync for T where
T: Any + Send + Sync,
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more