13#include <qwayland-server-server-decoration-palette.h>
17static const quint32 s_version = 1;
24 QList<ServerSideDecorationPaletteInterface *>
palettes;
37 wl_resource_post_error(resource->handle, 0,
"invalid surface");
38 qCWarning(KWIN_CORE) <<
"ServerSideDecorationPaletteInterface requested for non existing SurfaceInterface";
42 wl_resource *palette_resource = wl_resource_create(resource->client(), &org_kde_kwin_server_decoration_palette_interface, resource->version(),
id);
43 if (!palette_resource) {
44 wl_client_post_no_memory(resource->client());
50 QObject::connect(palette, &QObject::destroyed,
q, [
this, palette]() {
58 : QtWaylandServer::org_kde_kwin_server_decoration_palette_manager(*display, s_version)
74 if (menu->surface() == surface) {
98 wl_resource_destroy(resource->handle);
103 if (this->palette ==
palette) {
117 wl_resource *resource)
118 : QtWaylandServer::org_kde_kwin_server_decoration_palette(resource)
124ServerSideDecorationPaletteInterface::ServerSideDecorationPaletteInterface(
SurfaceInterface *surface, wl_resource *resource)
144#include "moc_server_decoration_palette.cpp"
Class holding the Wayland server display loop.
~ServerSideDecorationPaletteInterface() override
void paletteChanged(const QString &palette)
SurfaceInterface * surface() const
ServerSideDecorationPaletteInterfacePrivate(ServerSideDecorationPaletteInterface *_q, SurfaceInterface *surface, wl_resource *resource)
void org_kde_kwin_server_decoration_palette_release(Resource *resource) override
void org_kde_kwin_server_decoration_palette_set_palette(Resource *resource, const QString &palette) override
SurfaceInterface * surface
ServerSideDecorationPaletteInterface * q
void org_kde_kwin_server_decoration_palette_destroy_resource(Resource *resource) override
void paletteCreated(KWin::ServerSideDecorationPaletteInterface *)
ServerSideDecorationPaletteManagerInterface(Display *display, QObject *parent=nullptr)
ServerSideDecorationPaletteInterface * paletteForSurface(SurfaceInterface *)
~ServerSideDecorationPaletteManagerInterface() override
void org_kde_kwin_server_decoration_palette_manager_create(Resource *resource, uint32_t id, struct ::wl_resource *surface) override
ServerSideDecorationPaletteManagerInterface * q
ServerSideDecorationPaletteManagerInterfacePrivate(ServerSideDecorationPaletteManagerInterface *q, Display *display)
QList< ServerSideDecorationPaletteInterface * > palettes
Resource representing a wl_surface.
static SurfaceInterface * get(wl_resource *native)