9#include <qwayland-server-xwayland-keyboard-grab-unstable-v1.h>
44 : zwp_xwayland_keyboard_grab_manager_v1(*display,
version)
51 wl_resource_destroy(resource->handle);
56 wl_resource *keyboardGrab = wl_resource_create(resource->client(), &zwp_xwayland_keyboard_grab_v1_interface,
version,
id);
58 wl_client_post_no_memory(resource->client());
64 QObject::connect(grab, &QObject::destroyed,
q, [
this, surfaceInterface, seatInterface] {
65 m_grabs.remove({surfaceInterface, seatInterface});
82 return d->m_grabs.contains({surface, seat});
86 : zwp_xwayland_keyboard_grab_v1(resource)
93 wl_resource_destroy(resource->handle);
101XWaylandKeyboardGrabV1Interface::XWaylandKeyboardGrabV1Interface(wl_resource *resource)
112#include "moc_xwaylandkeyboardgrab_v1.cpp"
Class holding the Wayland server display loop.
Represents a Seat on the Wayland Display.
static SeatInterface * get(wl_resource *native)
Resource representing a wl_surface.
static SurfaceInterface * get(wl_resource *native)
bool hasGrab(SurfaceInterface *surface, SeatInterface *seat) const
XWaylandKeyboardGrabManagerV1Interface(Display *display, QObject *parent=nullptr)
~XWaylandKeyboardGrabManagerV1Interface() override
XWaylandKeyboardGrabManagerV1InterfacePrivate(Display *display, XWaylandKeyboardGrabManagerV1Interface *q)
void zwp_xwayland_keyboard_grab_manager_v1_grab_keyboard(Resource *resource, uint32_t id, wl_resource *surface, wl_resource *seat) override
XWaylandKeyboardGrabManagerV1Interface *const q
QHash< QPair< const SurfaceInterface *, const SeatInterface * >, XWaylandKeyboardGrabV1Interface * > m_grabs
void zwp_xwayland_keyboard_grab_manager_v1_destroy(Resource *resource) override
~XWaylandKeyboardGrabV1Interface() override
XWaylandKeyboardGrabV1Interface *const q
void zwp_xwayland_keyboard_grab_v1_destroy(Resource *resource) override
XWaylandKeyboardGrabV1InterfacePrivate(XWaylandKeyboardGrabV1Interface *q, wl_resource *resource)
void zwp_xwayland_keyboard_grab_v1_destroy_resource(Resource *resource) override