---
name: "wayland_server_zwp_xwayland_keyboard_grab_manager_v1_t"
section: "3"
platform: "linux"
package: "waylandpp-dev"
version: "1.0.0-6+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/wayland_server_zwp_xwayland_keyboard_grab_manager_v1_t"
---

# wayland\_server\_zwp\_xwayland\_keyboard\_grab\_manager\_v1\_t(3)

context object for keyboard grab manager

## NAME

wayland::server::zwp\_xwayland\_keyboard\_grab\_manager\_v1\_t - context object for keyboard grab manager

## SYNOPSIS

`#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 **10016** 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.

**Returns**

Interface name of the resource object.

### client\_t wayland::server::resource\_t::get\_client () const` [inherited]`

Get the associated client

**Returns**

the client that owns the resource.

### uint32\_t wayland::server::resource\_t::get\_id () const` [inherited]`

Get the internal ID of the resource

**Returns**

the internal ID of the resource

### unsigned int wayland::server::resource\_t::get\_version () const` [inherited]`

Get interface version

**Returns**

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

**Parameters**

*id* \
 *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.

**Returns**

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

## Author

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