summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/kms/qkmscursor.cpp6
-rw-r--r--src/plugins/platforms/kms/qkmscursor.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/platforms/kms/qkmscursor.cpp b/src/plugins/platforms/kms/qkmscursor.cpp
index bce4276d2b..e7d1069b8b 100644
--- a/src/plugins/platforms/kms/qkmscursor.cpp
+++ b/src/plugins/platforms/kms/qkmscursor.cpp
@@ -59,6 +59,12 @@ QKmsCursor::QKmsCursor(QKmsScreen *screen)
m_cursorImage = new QPlatformCursorImage(0, 0, 0, 0, 0, 0);
}
+QKmsCursor::~QKmsCursor()
+{
+ drmModeSetCursor(m_screen->device()->fd(), m_screen->crtcId(),
+ 0, 0, 0);
+}
+
void QKmsCursor::pointerEvent(const QMouseEvent &event)
{
int status = drmModeMoveCursor(m_screen->device()->fd(),
diff --git a/src/plugins/platforms/kms/qkmscursor.h b/src/plugins/platforms/kms/qkmscursor.h
index c0734eb68a..01a6e6b955 100644
--- a/src/plugins/platforms/kms/qkmscursor.h
+++ b/src/plugins/platforms/kms/qkmscursor.h
@@ -58,6 +58,7 @@ class QKmsCursor : public QPlatformCursor
{
public:
QKmsCursor(QKmsScreen *screen);
+ ~QKmsCursor();
void pointerEvent(const QMouseEvent &event);
void changeCursor(QCursor *widgetCursor, QWindow *window);