summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/eglconvenience/qeglplatformcursor_p.h
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-05-13 14:27:45 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-05-13 16:08:01 +0200
commitff334fd57414be90ab6b40f91e16f0bdb1835762 (patch)
treebb74d8217781394163870cb3399f0984136498c8 /src/platformsupport/eglconvenience/qeglplatformcursor_p.h
parentec4c93a852ddc1d1437232241de492ad20d4cbb1 (diff)
parentb5552bab40f2e165cf7196993ffc83785f4d8264 (diff)
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/platformsupport/eglconvenience/qeglplatformcursor_p.h')
-rw-r--r--src/platformsupport/eglconvenience/qeglplatformcursor_p.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/platformsupport/eglconvenience/qeglplatformcursor_p.h b/src/platformsupport/eglconvenience/qeglplatformcursor_p.h
index c9ff9a1198..6f4216874a 100644
--- a/src/platformsupport/eglconvenience/qeglplatformcursor_p.h
+++ b/src/platformsupport/eglconvenience/qeglplatformcursor_p.h
@@ -68,6 +68,24 @@ private:
int m_mouseCount;
};
+class QEGLPlatformCursorUpdater : public QObject
+{
+ Q_OBJECT
+
+public:
+ QEGLPlatformCursorUpdater(QPlatformScreen *screen)
+ : m_screen(screen), m_active(false) { }
+
+ void scheduleUpdate(const QPoint &pos, const QRegion &rgn);
+
+private slots:
+ void update(const QPoint &pos, const QRegion &rgn);
+
+private:
+ QPlatformScreen *m_screen;
+ bool m_active;
+};
+
class QEGLPlatformCursor : public QPlatformCursor
{
public:
@@ -130,6 +148,7 @@ private:
int m_textureCoordEntry;
int m_textureEntry;
QEGLPlatformCursorDeviceListener *m_deviceListener;
+ QEGLPlatformCursorUpdater m_updater;
};
QT_END_NAMESPACE