File indexing completed on 2024-05-12 04:00:24
0001 /* 0002 SPDX-FileCopyrightText: 2021 Aleix Pol Gonzalez <aleixpol@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef WAYLANDXDGACTIVATIONV1_P_H 0008 #define WAYLANDXDGACTIVATIONV1_P_H 0009 0010 #include "qwayland-xdg-activation-v1.h" 0011 #include <QObject> 0012 #include <QtWaylandClient/QWaylandClientExtension> 0013 0014 class QWaylandSurface; 0015 0016 class WaylandXdgActivationTokenV1 : public QObject, public QtWayland::xdg_activation_token_v1 0017 { 0018 Q_OBJECT 0019 public: 0020 void xdg_activation_token_v1_done(const QString &token) override 0021 { 0022 Q_EMIT done(token); 0023 } 0024 0025 Q_SIGNALS: 0026 void failed(); 0027 void done(const QString &token); 0028 }; 0029 0030 class WaylandXdgActivationV1 : public QWaylandClientExtensionTemplate<WaylandXdgActivationV1>, public QtWayland::xdg_activation_v1 0031 { 0032 public: 0033 ~WaylandXdgActivationV1() override; 0034 0035 static WaylandXdgActivationV1 *self(); 0036 0037 WaylandXdgActivationTokenV1 *requestXdgActivationToken(wl_seat *seat, struct ::wl_surface *surface, uint32_t serial, const QString &app_id); 0038 0039 private: 0040 WaylandXdgActivationV1(); 0041 }; 0042 0043 #endif