https://bugs.kde.org/show_bug.cgi?id=437196
Alvin Wong <al...@alvinhc.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dimul...@gmail.com --- Comment #1 from Alvin Wong <al...@alvinhc.com> --- @Dmitry: I traced the window messages and seem to have found a pattern. This is how the messages seem to arrive: 1. When drawing a stroke, WM_POINTERDOWN / WM_POINTERUPDATE / WM_POINTERUP are received for the pen input. 2. Synthesized WM_LBUTTONDOWN / WM_MOUSEMOVE / WM_LBUTTONUP are also received. 3. As the pen is released and the touch docker is touched, WM_POINTERDOWN / WM_POINTERUPDATE / WM_POINTERUP are received for the touch point. 4. Synthesized WM_TOUCH messages are also received. 5. Finally, synthesized WM_LBUTTONDOWN / WM_LBUTTONUP are received. Whenever the command gets triggered twice, however, the window received extra WM_PINTERUPDATE messages generated from the pen moving, in between item 3 and 5. Effectively, you don't need to draw on the canvas to trigger the bug. Simply shaking the pen hovering on the canvas and touching the touch docker buttons at the same time can trigger the bug. I suspect this to be the culprit: https://invent.kde.org/qt/qt/qtbase/-/commit/786c58817187bb18552934c807ba7a7ea845f49e#5fba19dc9f238dadbe8c1589df5a5f8c5c8a8537_732_734 I'm not sure if it is safe to just revert that commit though, since it does mention Qt Quick relies on this. What do you think? P.S. the code comment states that "using the bit 7 of the extra msg info for checking if synthesized for touch does not work", but I suspect it is related to the thing where Windows starts synthesizing touch events from pen input since 1709. -- You are receiving this mail because: You are watching all bug changes.