summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylanddrag.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/compositor/compositor_api/qwaylanddrag.cpp')
-rw-r--r--src/compositor/compositor_api/qwaylanddrag.cpp29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/compositor/compositor_api/qwaylanddrag.cpp b/src/compositor/compositor_api/qwaylanddrag.cpp
index cc45c1279..3c3d9ce52 100644
--- a/src/compositor/compositor_api/qwaylanddrag.cpp
+++ b/src/compositor/compositor_api/qwaylanddrag.cpp
@@ -40,33 +40,33 @@
#include "qwldatadevice_p.h"
#include "qwaylandview.h"
-#include <QtWaylandCompositor/private/qwaylandinput_p.h>
+#include <QtWaylandCompositor/private/qwaylandseat_p.h>
QT_BEGIN_NAMESPACE
class QWaylandDragPrivate : public QObjectPrivate
{
public:
- QWaylandDragPrivate(QWaylandInputDevice *id)
- : inputDevice(id)
+ QWaylandDragPrivate(QWaylandSeat *seat)
+ : seat(seat)
{
}
QtWayland::DataDevice *dataDevice()
{
- return QWaylandInputDevicePrivate::get(inputDevice)->dataDevice();
+ return QWaylandSeatPrivate::get(seat)->dataDevice();
}
const QtWayland::DataDevice *dataDevice() const
{
- return QWaylandInputDevicePrivate::get(inputDevice)->dataDevice();
+ return QWaylandSeatPrivate::get(seat)->dataDevice();
}
- QWaylandInputDevice *inputDevice;
+ QWaylandSeat *seat;
};
-QWaylandDrag::QWaylandDrag(QWaylandInputDevice *inputDevice)
- : QObject(* new QWaylandDragPrivate(inputDevice))
+QWaylandDrag::QWaylandDrag(QWaylandSeat *seat)
+ : QObject(* new QWaylandDragPrivate(seat))
{
}
@@ -81,6 +81,19 @@ QWaylandSurface *QWaylandDrag::icon() const
return dataDevice->dragIcon();
}
+QWaylandSurface *QWaylandDrag::origin() const
+{
+ Q_D(const QWaylandDrag);
+ const QtWayland::DataDevice *dataDevice = d->dataDevice();
+ return dataDevice ? dataDevice->dragOrigin() : nullptr;
+}
+
+QWaylandSeat *QWaylandDrag::seat() const
+{
+ Q_D(const QWaylandDrag);
+ return d->seat;
+}
+
bool QWaylandDrag::visible() const
{