aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickevents.cpp
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@qt.io>2018-03-06 14:23:06 +0100
committerShawn Rutledge <shawn.rutledge@qt.io>2018-03-08 06:29:20 +0000
commit6b877ec53f3308e4a685c43142fde951f81de02b (patch)
tree2151abebb272e31b239de8b8e6749b7e7fcadfd7 /src/quick/items/qquickevents.cpp
parent6b310e5f9a53c366fbb8fb78bd7c343aad4e0cdd (diff)
touchDevice: don't lose bits from QTouchDevice::capabilities
It was a bug that we made a local QQuickPointerDevice::Capabilities instance and didn't pass it to the QQuickPointerDevice constructor. Further, we've now reserved the entire lower byte for storing QTouchDevice::capabilities, and the upper byte for storing QtQuick- specific capabilities, so we can copy the whole lower byte instead of just the lower nybble. Change-Id: Ia21b6a1503ea870a1e16cebe70a20f4e21903054 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
Diffstat (limited to 'src/quick/items/qquickevents.cpp')
-rw-r--r--src/quick/items/qquickevents.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/quick/items/qquickevents.cpp b/src/quick/items/qquickevents.cpp
index 40d1fab3dc..1be4bafe28 100644
--- a/src/quick/items/qquickevents.cpp
+++ b/src/quick/items/qquickevents.cpp
@@ -625,8 +625,7 @@ QQuickPointerDevice *QQuickPointerDevice::touchDevice(const QTouchDevice *d)
int maximumTouchPoints = 10;
QQuickPointerDevice::Capabilities caps = QQuickPointerDevice::Capabilities(QTouchDevice::Position);
if (d) {
- QQuickPointerDevice::Capabilities caps =
- static_cast<QQuickPointerDevice::Capabilities>(static_cast<int>(d->capabilities()) & 0x0F);
+ caps = static_cast<QQuickPointerDevice::Capabilities>(static_cast<int>(d->capabilities()) & 0xFF);
if (d->type() == QTouchDevice::TouchPad) {
type = QQuickPointerDevice::TouchPad;
caps |= QQuickPointerDevice::Scroll;