1 /* 2 SPDX-FileCopyrightText: 2015 Martin Gräßlin <mgraesslin@kde.org> 3 4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 5 */ 6 #ifndef KWINDOWSYSTEM_KWAYLAND_PLUGIN_H 7 #define KWINDOWSYSTEM_KWAYLAND_PLUGIN_H 8 9 #include <KWindowSystem/private/kwindowsystemplugininterface_p.h> 10 11 class KWaylandPlugin : public KWindowSystemPluginInterface 12 { 13 Q_OBJECT 14 Q_PLUGIN_METADATA(IID "org.kde.kwindowsystem.KWindowSystemPluginInterface" FILE "wayland.json") 15 Q_INTERFACES(KWindowSystemPluginInterface) 16 17 public: 18 explicit KWaylandPlugin(QObject *parent = nullptr); 19 ~KWaylandPlugin() override; 20 21 KWindowEffectsPrivate *createEffects() override; 22 KWindowSystemPrivate *createWindowSystem() override; 23 KWindowInfoPrivate *createWindowInfo(WId window, NET::Properties properties, NET::Properties2 properties2) override; 24 KWindowShadowTilePrivate *createWindowShadowTile() override; 25 KWindowShadowPrivate *createWindowShadow() override; 26 }; 27 28 #endif 29