summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBłażej Szczygieł <spaz16@wp.pl>2018-09-25 18:45:10 +0200
committerGatis Paeglis <gatis.paeglis@qt.io>2018-10-29 13:14:25 +0000
commitd4e937a6280f34bc1cce8c8cea3806a741312fbc (patch)
treea5cce91d004cd1ec77e0658466037c0aa7807341
parentd2e0e416d4444ccf3c208d6770e32ff0fb04b543 (diff)
xcb: Don't get initial screen rotation
"xcb_randr_get_screen_info" can be slow and in some configurations can cause short mouse cursor freezes (which will happen on Qt application startup). Initial screen rotation was used only to not handle possible redundant screen change event. Fixes: QTBUG-70760 Change-Id: I9f01325a045d2c82c4dd2fce91a18a34e54a4bcd Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
-rw-r--r--src/plugins/platforms/xcb/qxcbscreen.cpp7
-rw-r--r--src/plugins/platforms/xcb/qxcbscreen.h2
2 files changed, 1 insertions, 8 deletions
diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp
index 7f2793b2b7..a696e2a311 100644
--- a/src/plugins/platforms/xcb/qxcbscreen.cpp
+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp
@@ -118,13 +118,6 @@ QXcbVirtualDesktop::QXcbVirtualDesktop(QXcbConnection *connection, xcb_screen_t
xcb_depth_next(&depth_iterator);
}
-
- if (connection->hasXRandr()) {
- xcb_connection_t *conn = connection->xcb_connection();
- auto screen_info = Q_XCB_REPLY(xcb_randr_get_screen_info, conn, screen->root);
- if (screen_info)
- m_rotation = screen_info->rotation;
- }
}
QXcbVirtualDesktop::~QXcbVirtualDesktop()
diff --git a/src/plugins/platforms/xcb/qxcbscreen.h b/src/plugins/platforms/xcb/qxcbscreen.h
index 6438669e7a..792aca4b06 100644
--- a/src/plugins/platforms/xcb/qxcbscreen.h
+++ b/src/plugins/platforms/xcb/qxcbscreen.h
@@ -220,7 +220,7 @@ private:
xcb_randr_crtc_t m_crtc;
xcb_randr_mode_t m_mode = XCB_NONE;
bool m_primary = false;
- uint8_t m_rotation = XCB_RANDR_ROTATION_ROTATE_0;
+ uint8_t m_rotation = 0;
QString m_outputName;
QSizeF m_outputSizeMillimeters;