KWin
Loading...
Searching...
No Matches
subsurface_p.h
Go to the documentation of this file.
1/*
2 SPDX-FileCopyrightText: 2014 Martin Gräßlin <mgraesslin@kde.org>
3 SPDX-FileCopyrightText: 2020 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
4
5 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
6*/
7
8#pragma once
9
10#include "subcompositor.h"
11
12#include <QPoint>
13#include <QPointer>
14
15#include "qwayland-server-wayland.h"
16
17namespace KWin
18{
19class SubCompositorInterfacePrivate : public QtWaylandServer::wl_subcompositor
20{
21public:
23
25
26protected:
27 void subcompositor_destroy(Resource *resource) override;
28 void subcompositor_get_subsurface(Resource *resource, uint32_t id, struct ::wl_resource *surface_resource, struct ::wl_resource *parent_resource) override;
29};
30
31class SubSurfaceInterfacePrivate : public QtWaylandServer::wl_subsurface
32{
33public:
35
37
39 QPoint position = QPoint(0, 0);
41 QPointer<SurfaceInterface> surface;
42 QPointer<SurfaceInterface> parent;
43
44protected:
45 void subsurface_destroy_resource(Resource *resource) override;
46 void subsurface_destroy(Resource *resource) override;
47 void subsurface_set_position(Resource *resource, int32_t x, int32_t y) override;
48 void subsurface_place_above(Resource *resource, struct ::wl_resource *sibling_resource) override;
49 void subsurface_place_below(Resource *resource, struct ::wl_resource *sibling_resource) override;
50 void subsurface_set_sync(Resource *resource) override;
51 void subsurface_set_desync(Resource *resource) override;
52};
53
54} // namespace KWin
Class holding the Wayland server display loop.
Definition display.h:34
void subcompositor_get_subsurface(Resource *resource, uint32_t id, struct ::wl_resource *surface_resource, struct ::wl_resource *parent_resource) override
SubCompositorInterfacePrivate(Display *display, SubCompositorInterface *q)
void subcompositor_destroy(Resource *resource) override
SubCompositorInterface * q
QPointer< SurfaceInterface > parent
static SubSurfaceInterfacePrivate * get(SubSurfaceInterface *subsurface)
void subsurface_set_desync(Resource *resource) override
SubSurfaceInterfacePrivate(SubSurfaceInterface *q, SurfaceInterface *surface, SurfaceInterface *parent, ::wl_resource *resource)
void subsurface_place_above(Resource *resource, struct ::wl_resource *sibling_resource) override
void subsurface_set_sync(Resource *resource) override
void subsurface_destroy(Resource *resource) override
void subsurface_destroy_resource(Resource *resource) override
void subsurface_set_position(Resource *resource, int32_t x, int32_t y) override
QPointer< SurfaceInterface > surface
SubSurfaceInterface::Mode mode
void subsurface_place_below(Resource *resource, struct ::wl_resource *sibling_resource) override
Resource representing a wl_surface.
Definition surface.h:80