summaryrefslogtreecommitdiffstats
path: root/tests/auto/client/mockinput.h
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/client/mockinput.h')
-rw-r--r--tests/auto/client/mockinput.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/auto/client/mockinput.h b/tests/auto/client/mockinput.h
index eb9beb564..031be2a4a 100644
--- a/tests/auto/client/mockinput.h
+++ b/tests/auto/client/mockinput.h
@@ -51,17 +51,20 @@ public:
Keyboard *keyboard() const { return m_keyboard.data(); }
Pointer *pointer() const { return m_pointer.data(); }
+ Touch *touch() const { return m_touch.data(); }
protected:
void seat_bind_resource(Resource *resource) Q_DECL_OVERRIDE;
void seat_get_keyboard(Resource *resource, uint32_t id) Q_DECL_OVERRIDE;
void seat_get_pointer(Resource *resource, uint32_t id) Q_DECL_OVERRIDE;
+ void seat_get_touch(Resource *resource, uint32_t id) Q_DECL_OVERRIDE;
private:
Compositor *m_compositor;
QScopedPointer<Keyboard> m_keyboard;
QScopedPointer<Pointer> m_pointer;
+ QScopedPointer<Touch> m_touch;
};
class Keyboard : public QtWaylandServer::wl_keyboard
@@ -107,14 +110,42 @@ private:
Surface *m_focus;
};
+class Touch : public QtWaylandServer::wl_touch
+{
+public:
+ Touch(Compositor *compositor);
+ void sendDown(Surface *surface, const QPoint &position, int id);
+ void sendUp(Surface *surface, int id);
+ void sendMotion(Surface *surface, const QPoint &position, int id);
+ void sendFrame(Surface *surface);
+private:
+ Compositor *m_compositor;
+};
+
+class DataOffer : public QtWaylandServer::wl_data_offer
+{
+public:
+ DataOffer();
+};
+
class DataDevice : public QtWaylandServer::wl_data_device
{
public:
DataDevice(Compositor *compositor);
+ void sendDataOffer(wl_client *client);
+ void sendEnter(Surface *surface, const QPoint &position);
+ void sendMotion(const QPoint &position);
+ void sendDrop(Surface *surface);
+ void sendLeave(Surface *surface);
~DataDevice();
+protected:
+ void data_device_start_drag(Resource *resource, struct ::wl_resource *source, struct ::wl_resource *origin, struct ::wl_resource *icon, uint32_t serial) override;
+
private:
Compositor *m_compositor;
+ QtWaylandServer::wl_data_offer *m_dataOffer;
+ Surface* m_focus;
};
class DataDeviceManager : public QtWaylandServer::wl_data_device_manager
@@ -122,9 +153,11 @@ class DataDeviceManager : public QtWaylandServer::wl_data_device_manager
public:
DataDeviceManager(Compositor *compositor, struct ::wl_display *display);
~DataDeviceManager();
+ DataDevice *dataDevice() const;
protected:
void data_device_manager_get_data_device(Resource *resource, uint32_t id, struct ::wl_resource *seat) Q_DECL_OVERRIDE;
+ void data_device_manager_create_data_source(Resource *resource, uint32_t id) override;
private:
Compositor *m_compositor;