File indexing completed on 2024-05-12 05:32:32

0001 /*
0002     SPDX-FileCopyrightText: 2020 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005 */
0006 
0007 #pragma once
0008 
0009 #include "xdgdecoration_v1.h"
0010 
0011 #include "qwayland-server-xdg-decoration-unstable-v1.h"
0012 
0013 namespace KWin
0014 {
0015 class XdgDecorationManagerV1InterfacePrivate : public QtWaylandServer::zxdg_decoration_manager_v1
0016 {
0017 public:
0018     XdgDecorationManagerV1InterfacePrivate(XdgDecorationManagerV1Interface *manager);
0019 
0020     XdgDecorationManagerV1Interface *q;
0021 
0022 protected:
0023     void zxdg_decoration_manager_v1_destroy(Resource *resource) override;
0024     void zxdg_decoration_manager_v1_get_toplevel_decoration(Resource *resource, uint32_t id, ::wl_resource *toplevel) override;
0025 };
0026 
0027 class XdgToplevelDecorationV1InterfacePrivate : public QtWaylandServer::zxdg_toplevel_decoration_v1
0028 {
0029 public:
0030     XdgToplevelDecorationV1InterfacePrivate(XdgToplevelDecorationV1Interface *decoration);
0031 
0032     XdgToplevelDecorationV1Interface *q;
0033     XdgToplevelInterface *toplevel;
0034     XdgToplevelDecorationV1Interface::Mode preferredMode = XdgToplevelDecorationV1Interface::Mode::Undefined;
0035 
0036 protected:
0037     void zxdg_toplevel_decoration_v1_destroy_resource(Resource *resource) override;
0038     void zxdg_toplevel_decoration_v1_destroy(Resource *resource) override;
0039     void zxdg_toplevel_decoration_v1_set_mode(Resource *resource, uint32_t mode) override;
0040     void zxdg_toplevel_decoration_v1_unset_mode(Resource *resource) override;
0041 };
0042 
0043 } // namespace KWin