From 48ff22fbd0e19e3f56412bb7a0d3354d7e06cacb Mon Sep 17 00:00:00 2001 From: obarun <eric@obarun.org> Date: Mon, 12 Nov 2018 21:20:08 +1100 Subject: [PATCH] upgpkg : 5.11.2-4 --- PKGBUILD | 10 +++++--- qt5-base-stutter.patch | 54 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+), 3 deletions(-) create mode 100644 qt5-base-stutter.patch diff --git a/PKGBUILD b/PKGBUILD index bb50b3e..8f259fc 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=qt5-base pkgname=(qt5-base qt5-xcb-private-headers) _qtver=5.11.2 pkgver=${_qtver/-/} -pkgrel=3 +pkgrel=4 arch=(x86_64) url='http://qt-project.org/' license=('GPL3' 'LGPL3' 'FDL' 'custom') @@ -27,8 +27,10 @@ optdepends=('qt5-svg: to use SVG icon themes' conflicts=('qtchooser') groups=('qt' 'qt5') _pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}" -source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") -sha256sums=('6381e7c3468d5a1dcfe3683b29eeced192faa0f8a32434fec071a59b8bcd0107') +source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + qt5-base-stutter.patch::"http://code.qt.io/cgit/qt/qtbase.git/patch/?id=d4e937a6") +sha256sums=('6381e7c3468d5a1dcfe3683b29eeced192faa0f8a32434fec071a59b8bcd0107' + '8af697a9bcc3e30dc4465d2b44829553dc48dd29e34c35a885e7f3f65d017d3f') prepare() { cd ${_pkgfqn} @@ -39,6 +41,8 @@ prepare() { mkspecs/common/gcc-base.conf sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${LDFLAGS}|" \ mkspecs/common/g++-unix.conf + + patch -p1 -i ../qt5-base-stutter.patch # https://bugreports.qt.io/browse/QTBUG-70760 } diff --git a/qt5-base-stutter.patch b/qt5-base-stutter.patch new file mode 100644 index 0000000..e01dc76 --- /dev/null +++ b/qt5-base-stutter.patch @@ -0,0 +1,54 @@ +From d4e937a6280f34bc1cce8c8cea3806a741312fbc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= <spaz16@wp.pl> +Date: Tue, 25 Sep 2018 18:45:10 +0200 +Subject: 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> +--- + src/plugins/platforms/xcb/qxcbscreen.cpp | 7 ------- + src/plugins/platforms/xcb/qxcbscreen.h | 2 +- + 2 files changed, 1 insertion(+), 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; +-- +cgit v1.2.1 + -- GitLab