diff options
Diffstat (limited to 'user/qt5-qtbase/big-endian-scroll-wheel.patch')
-rw-r--r-- | user/qt5-qtbase/big-endian-scroll-wheel.patch | 98 |
1 files changed, 55 insertions, 43 deletions
diff --git a/user/qt5-qtbase/big-endian-scroll-wheel.patch b/user/qt5-qtbase/big-endian-scroll-wheel.patch index 3fbb8aec7..4cfa4f7b8 100644 --- a/user/qt5-qtbase/big-endian-scroll-wheel.patch +++ b/user/qt5-qtbase/big-endian-scroll-wheel.patch @@ -1,43 +1,55 @@ ---- qtbase-opensource-src-5.9.7/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp.old 2018-10-16 08:37:05.000000000 +0000 -+++ qtbase-opensource-src-5.9.7/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp 2019-08-03 03:58:05.875790720 +0000 -@@ -43,6 +43,7 @@ - #include "qxcbwindow.h" - #include "qtouchdevice.h" - #include "QtCore/qmetaobject.h" -+#include "QtCore/qendian.h" - #include <qpa/qwindowsysteminterface_p.h> - #include <QDebug> - #include <cmath> -@@ -106,6 +107,7 @@ - XIEventMask xiEventMask; - bitMask = XI_HierarchyChangedMask; - bitMask |= XI_DeviceChangedMask; -+ bitMask = qToLittleEndian(bitMask); - xiEventMask.deviceid = XIAllDevices; - xiEventMask.mask_len = sizeof(bitMask); - xiEventMask.mask = xiBitMask; -@@ -327,7 +329,8 @@ - } - XIEventMask mask; - mask.mask_len = sizeof(bitMask); -+ bitMask = qToLittleEndian(bitMask); - mask.mask = xiBitMask; - // When xi2MouseEvents() is true (the default), pointer emulation for touch and tablet - // events will get disabled. This is preferable, as Qt Quick handles touch events - // directly, while for other applications QtGui synthesizes mouse events. -@@ -353,6 +356,7 @@ - tabletBitMask = XI_PropertyEventMask; - if (!pointerSelected) - tabletBitMask |= XI_ButtonPressMask | XI_ButtonReleaseMask | XI_MotionMask; -+ tabletBitMask = qToLittleEndian(tabletBitMask); - for (int i = 0; i < m_tabletData.count(); ++i) { - int deviceId = m_tabletData.at(i).deviceId; - tabletDevices.insert(deviceId); -@@ -374,6 +378,7 @@ - - scrollBitMask = XI_MotionMask; - scrollBitMask |= XI_ButtonReleaseMask; -+ scrollBitMask = qToLittleEndian(scrollBitMask); - int i=0; - for (const ScrollingDevice& scrollingDevice : qAsConst(m_scrollingDevices)) { - if (tabletDevices.contains(scrollingDevice.deviceId)) +--- qtbase-everywhere-src-5.12.3/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp.orig 2019-08-02 17:27:00.011197696 +0200
++++ qtbase-everywhere-src-5.12.3/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp 2019-08-02 17:29:36.336019411 +0200
+@@ -43,6 +43,7 @@
+ #include "qxcbwindow.h"
+ #include "qtouchdevice.h"
+ #include "QtCore/qmetaobject.h"
++#include "QtCore/qendian.h"
+ #include <qpa/qwindowsysteminterface_p.h>
+ #include <QDebug>
+ #include <cmath>
+@@ -66,6 +67,7 @@
+ xiEventMask.mask = XCB_INPUT_XI_EVENT_MASK_HIERARCHY;
+ xiEventMask.mask |= XCB_INPUT_XI_EVENT_MASK_DEVICE_CHANGED;
+ xiEventMask.mask |= XCB_INPUT_XI_EVENT_MASK_PROPERTY;
++ xiEventMask.mask = qToLittleEndian(xiEventMask.mask);
+ xcb_input_xi_select_events(xcb_connection(), rootWindow(), 1, &xiEventMask.header);
+ }
+
+@@ -90,7 +92,7 @@
+ qt_xcb_input_event_mask_t mask;
+ mask.header.deviceid = XCB_INPUT_DEVICE_ALL_MASTER;
+ mask.header.mask_len = 1;
+- mask.mask = bitMask;
++ mask.mask = qToLittleEndian(bitMask);
+ xcb_void_cookie_t cookie =
+ xcb_input_xi_select_events_checked(xcb_connection(), window, 1, &mask.header);
+ xcb_generic_error_t *error = xcb_request_check(xcb_connection(), cookie);
+@@ -363,7 +365,7 @@
+ qt_xcb_input_event_mask_t xiMask;
+ xiMask.header.deviceid = XCB_INPUT_DEVICE_ALL_MASTER;
+ xiMask.header.mask_len = 1;
+- xiMask.mask = mask;
++ xiMask.mask = qToLittleEndian(mask);
+
+ xcb_void_cookie_t cookie =
+ xcb_input_xi_select_events_checked(xcb_connection(), window, 1, &xiMask.header);
+@@ -390,7 +392,7 @@
+ tabletDevices.insert(deviceId);
+ xiEventMask[i].header.deviceid = deviceId;
+ xiEventMask[i].header.mask_len = 1;
+- xiEventMask[i].mask = mask;
++ xiEventMask[i].mask = qToLittleEndian(mask);
+ }
+ xcb_input_xi_select_events(xcb_connection(), window, nrTablets, &(xiEventMask.data()->header));
+ }
+@@ -406,7 +408,7 @@
+ #endif
+ xiEventMask[i].header.deviceid = scrollingDevice.deviceId;
+ xiEventMask[i].header.mask_len = 1;
+- xiEventMask[i].mask = mask;
++ xiEventMask[i].mask = qToLittleEndian(mask);
+ i++;
+ }
+ xcb_input_xi_select_events(xcb_connection(), window, i, &(xiEventMask.data()->header));
+
|