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_X11_PLUGIN_H 7 #define KWINDOWSYSTEM_X11_PLUGIN_H 8 9 #include "kwindowsystemplugininterface_p.h" 10 11 class X11Plugin : public KWindowSystemPluginInterface 12 { 13 Q_OBJECT 14 Q_PLUGIN_METADATA(IID "org.kde.kwindowsystem.KWindowSystemPluginInterface" FILE "xcb.json") 15 Q_INTERFACES(KWindowSystemPluginInterface) 16 17 public: 18 explicit X11Plugin(QObject *parent = nullptr); 19 ~X11Plugin() override; 20 21 KWindowEffectsPrivate *createEffects() override; 22 KWindowSystemPrivate *createWindowSystem() override; 23 KWindowInfoPrivate *createWindowInfo(WId window, NET::Properties properties, NET::Properties2 properties2) override; 24 KWindowShadowPrivate *createWindowShadow() override final; 25 KWindowShadowTilePrivate *createWindowShadowTile() override final; 26 }; 27 28 #endif 29