summaryrefslogtreecommitdiffstats
path: root/src/platformsupport
diff options
context:
space:
mode:
authorMikko Harju <mikko.harju@jolla.com>2015-02-13 13:45:25 +0200
committerRobin Burchell <robin.burchell@viroteck.net>2015-02-14 22:12:54 +0000
commit06ecd74db138bcdf6f87df5917f6d5035da41823 (patch)
tree652f1df08b523c2876de426def6d48c6ca7abbf3 /src/platformsupport
parente812358ba8570823e4d600561d45361c2edaaa3b (diff)
Do not mark non-existent touch points as stationary
Make sure touches that were already released on an earlier SYN_REPORT are not re-marked as TouchPointStationary. This change has no effect on type A event processing since there the contact state is never zeroed. Change-Id: I2d4d705d2b3fae424b6245a75d4015dc2d86ad35 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Diffstat (limited to 'src/platformsupport')
-rw-r--r--src/platformsupport/input/evdevtouch/qevdevtouch.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/platformsupport/input/evdevtouch/qevdevtouch.cpp b/src/platformsupport/input/evdevtouch/qevdevtouch.cpp
index b1b0f37e97..5215f7da0a 100644
--- a/src/platformsupport/input/evdevtouch/qevdevtouch.cpp
+++ b/src/platformsupport/input/evdevtouch/qevdevtouch.cpp
@@ -554,6 +554,10 @@ void QEvdevTouchScreenData::processInputEvent(input_event *data)
while (it.hasNext()) {
it.next();
Contact &contact(it.value());
+
+ if (!contact.state)
+ continue;
+
if (contact.state == Qt::TouchPointReleased) {
if (m_typeB)
contact.state = static_cast<Qt::TouchPointState>(0);