context object for keyboard grab manager


#include <wayland-server-protocol-unstable.hpp>

Inherits wayland::server::resource_t.

Public Member Functions

std::function< void()> & on_destroy ()
destroy the keyboard grab manager
std::function< void(zwp_xwayland_keyboard_grab_v1_t, surface_t, seat_t)> & on_grab_keyboard ()
grab the keyboard to a surface
bool proxy_has_object () const
Check whether this wrapper actually wraps an object.
void post_no_memory () const
uint32_t get_id () const
client_t get_client () const
unsigned int get_version () const
std::string get_class ()

Detailed Description

context object for keyboard grab manager

A global interface used for grabbing the keyboard.

Definition at line 10017 of file wayland-server-protocol-unstable.hpp.

Member Function Documentation

std::string wayland::server::resource_t::get_class () [inherited]

Retrieve the interface name (class) of a resource object.


Interface name of the resource object.

client_t wayland::server::resource_t::get_client () const [inherited]

Get the associated client


the client that owns the resource.

uint32_t wayland::server::resource_t::get_id () const [inherited]

Get the internal ID of the resource


the internal ID of the resource

unsigned int wayland::server::resource_t::get_version () const [inherited]

Get interface version


Interface version this resource has been constructed with.

std::function< void()> & zwp_xwayland_keyboard_grab_manager_v1_t::on_destroy ()

destroy the keyboard grab manager Destroy the keyboard grab manager.

Definition at line 8733 of file wayland-server-protocol-unstable.cpp.

std::function< void(zwp_xwayland_keyboard_grab_v1_t, surface_t, seat_t)> & zwp_xwayland_keyboard_grab_manager_v1_t::on_grab_keyboard ()

grab the keyboard to a surface


surface surface to report keyboard events to
seat the seat for which the keyboard should be grabbed

The grab_keyboard request asks for a grab of the keyboard, forcing the keyboard focus for the given seat upon the given surface.

The protocol provides no guarantee that the grab is ever satisfied, and does not require the compositor to send an error if the grab cannot ever be satisfied. It is thus possible to request a keyboard grab that will never be effective.

The protocol:

does not guarantee that the grab itself is applied for a surface, the grab request may be silently ignored by the compositor, does not guarantee that any events are sent to this client even if the grab is applied to a surface, does not guarantee that events sent to this client are exhaustive, a compositor may filter some events for its own consumption, does not guarantee that events sent to this client are continuous, a compositor may change and reroute keyboard events while the grab is nominally active.

Definition at line 8739 of file wayland-server-protocol-unstable.cpp.

void wayland::server::resource_t::post_no_memory () const [inherited]

Post 'not enough memory' error to the client

If the compositor has not enough memory to fulfill a certail request of the client, this function can be called to notify the client of this circumstance.

bool wayland::server::resource_t::proxy_has_object () const [inherited]

Check whether this wrapper actually wraps an object.


true if there is an underlying object, false if this wrapper is empty


Generated automatically by Doxygen for Wayland++ from the source code.


Sun Mar 26 2023 Version 1.0.0 Wayland++