1 | /* |
2 | SPDX-FileCopyrightText: 2014, 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 TOUCHCLIENTTEST_H |
7 | #define TOUCHCLIENTTEST_H |
8 | |
9 | #include <QObject> |
10 | #include <QSize> |
11 | |
12 | namespace KWayland |
13 | { |
14 | namespace Client |
15 | { |
16 | class Compositor; |
17 | class ConnectionThread; |
18 | class EventQueue; |
19 | class Output; |
20 | class Registry; |
21 | class ShmPool; |
22 | class Surface; |
23 | } |
24 | } |
25 | |
26 | class QThread; |
27 | class QTimer; |
28 | |
29 | class WaylandClientTest : public QObject |
30 | { |
31 | Q_OBJECT |
32 | public: |
33 | explicit WaylandClientTest(QObject *parent = nullptr); |
34 | ~WaylandClientTest() override; |
35 | |
36 | private: |
37 | void init(); |
38 | void render(const QSize &size); |
39 | void render(); |
40 | void setupRegistry(KWayland::Client::Registry *registry); |
41 | void toggleTimer(); |
42 | QThread *m_connectionThread; |
43 | KWayland::Client::ConnectionThread *m_connectionThreadObject; |
44 | KWayland::Client::EventQueue *m_eventQueue; |
45 | KWayland::Client::Compositor *m_compositor; |
46 | KWayland::Client::Output *m_output; |
47 | KWayland::Client::Surface *m_surface; |
48 | KWayland::Client::ShmPool *m_shm; |
49 | QSize m_currentSize; |
50 | QTimer *m_timer; |
51 | }; |
52 | |
53 | #endif |
54 | |