diff options
-rw-r--r-- | src/plugins/platforms/xcb/qxcbcursor.cpp | 8 | ||||
-rw-r--r-- | src/plugins/platforms/xcb/qxcbcursor.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp index 8f087edc9b..dc9ed46956 100644 --- a/src/plugins/platforms/xcb/qxcbcursor.cpp +++ b/src/plugins/platforms/xcb/qxcbcursor.cpp @@ -10,6 +10,7 @@ #include <QtGui/QWindow> #include <QtGui/QBitmap> #include <QtGui/private/qguiapplication_p.h> +#include <qpa/qplatformtheme.h> #if QT_CONFIG(xcb_xlib) #include <X11/cursorfont.h> @@ -288,6 +289,13 @@ QXcbCursor::~QXcbCursor() xcb_cursor_context_free(m_cursorContext); } +QSize QXcbCursor::size() const +{ + if (const QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme()) + return theme->themeHint(QPlatformTheme::MouseCursorSize).toSize(); + return QSize(24, 24); +} + void QXcbCursor::updateContext() { if (m_cursorContext) diff --git a/src/plugins/platforms/xcb/qxcbcursor.h b/src/plugins/platforms/xcb/qxcbcursor.h index 14958f824b..bf26861e8f 100644 --- a/src/plugins/platforms/xcb/qxcbcursor.h +++ b/src/plugins/platforms/xcb/qxcbcursor.h @@ -48,6 +48,8 @@ public: QPoint pos() const override; void setPos(const QPoint &pos) override; + QSize size() const override; + void updateContext(); static void queryPointer(QXcbConnection *c, QXcbVirtualDesktop **virtualDesktop, QPoint *pos, int *keybMask = nullptr); |