Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.2.1
-
None
-
19d289ab1b5bde3e136765e5432b5c7d004df3a4
Description
I'm running Qt5.2.1 on top of Xorg with an eGalax usb touchscreen. Worked nice in Qt4.8 but in 5.1 things started to misbehave. This commit solved some of the 5.1 stuff but a apparently broke something else.
commit 2c65b78b400ec27e6e559829b9a970dca2df6669
Author: Allan Sandfeld Jensen <allan.jensen@digia.com>
Date: Wed Dec 4 12:51:28 2013
Avoid duplicate emulated mouse events with XInput2
When using a touch screen on a Linux machine, we receive both touch-events
and emulated mouse events from XInput, on top of that we synthesize mouse-
events ourselves for the touch events.
This patch grabs the touch device for touch events whenever it processes
a touch-begin thereby avoiding XInput from synthesizing mouse events.
Task-number: QTBUG-35157
Change-Id: I5849d5841be236d6719cd080af2e9e39eb9cdd84
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Basically what I seeing is that the cursor does not always follow the touch-events. 95% of the times touch-events are issued the mouse cursior just stays put, but the remaining 5% of the times i moves to the touched point. Symmetry between touch,move,stationary,release looks good, but I'm suspecting that the grab introduced in the above commit is a little more tht necessary.
I ran my application with theese environment variables set.
expoort QT_XCB_DEBUG_XINPUT=1
export QT_XCB_DEBUG_XINPUT_DEVICES=1
export QT_DEBUG_PLUGINS=1
Attachments
Issue Links
- relates to
-
QTBUG-40856 MouseArea containsMouse flag is not reset on Touch Screen
- Open
-
QTBUG-35157 Duplicate emulated mouse events on XInput2
- Closed
-
QTBUG-30417 Missing touchPointReleased makes touch ids never expire
- Closed