diff options
-rw-r--r-- | src/client/qwaylanddisplay.cpp | 5 | ||||
-rw-r--r-- | src/client/qwaylanddisplay_p.h | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp index b985f10e5..e0155fc95 100644 --- a/src/client/qwaylanddisplay.cpp +++ b/src/client/qwaylanddisplay.cpp @@ -375,6 +375,11 @@ bool QWaylandDisplay::supportsWindowDecoration() const return integrationSupport; } +QWaylandWindow *QWaylandDisplay::lastInputWindow() const +{ + return mLastInputWindow.data(); +} + void QWaylandDisplay::setLastInputDevice(QWaylandInputDevice *device, uint32_t serial, QWaylandWindow *win) { mLastInputDevice = device; diff --git a/src/client/qwaylanddisplay_p.h b/src/client/qwaylanddisplay_p.h index 4549d52e6..7ba431d7c 100644 --- a/src/client/qwaylanddisplay_p.h +++ b/src/client/qwaylanddisplay_p.h @@ -36,6 +36,7 @@ #include <QtCore/QObject> #include <QtCore/QRect> +#include <QtCore/QPointer> #include <QtCore/QWaitCondition> @@ -157,7 +158,7 @@ public: uint32_t lastInputSerial() const { return mLastInputSerial; } QWaylandInputDevice *lastInputDevice() const { return mLastInputDevice; } - QWaylandWindow *lastInputWindow() const { return mLastInputWindow; } + QWaylandWindow *lastInputWindow() const; void setLastInputDevice(QWaylandInputDevice *device, uint32_t serial, QWaylandWindow *window); public slots: @@ -202,7 +203,7 @@ private: int mCompositorVersion; uint32_t mLastInputSerial; QWaylandInputDevice *mLastInputDevice; - QWaylandWindow *mLastInputWindow; + QPointer<QWaylandWindow> mLastInputWindow; void registry_global(uint32_t id, const QString &interface, uint32_t version) Q_DECL_OVERRIDE; void registry_global_remove(uint32_t id) Q_DECL_OVERRIDE; |