https://bugs.kde.org/show_bug.cgi?id=452662

            Bug ID: 452662
           Summary: Two-finger pan/rotate gesture glitch with changing
                    touch points
           Product: krita
           Version: git master (please specify the git hash!)
          Platform: Microsoft Windows
                OS: Microsoft Windows
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Shortcuts and Canvas Input Settings
          Assignee: krita-bugs-n...@kde.org
          Reporter: al...@alvinhc.com
  Target Milestone: ---

Created attachment 148175
  --> https://bugs.kde.org/attachment.cgi?id=148175&action=edit
tablet log, the gesture has been performed multiple times

Hold one finger down completely still, then flick (press, move, release) using
another finger repeatedly. Sometimes you can see the canvas jump as if you have
never released the second finger. Sometimes the canvas rotates 180 degrees.

IRC conversation:

<sh_zam> windragon: the problem seems here: 
<sh_zam> [2528] krita.tabletlog: "[       ] TouchUpdate      TouchScreen id:
100663306 hires:      930,   557.5 prs: 0.5 rot: 0; id: 100663297 hires:     
294,     288 prs: 0.5 rot: 0; "
<sh_zam> [2528] krita.tabletlog: "[       ] TouchUpdate      TouchScreen id:
100663297 hires:      294,     288 prs: 0.5 rot: 0; id: 100663307 hires:     
948,   342.5 prs: 0.5 rot: 0; "
<sh_zam> the touchpoints are flipped by the driver apparently. 
<windragon> sh_zam: the id values are mapped correctly though
<sh_zam> this doesn't seem like a regression caused by the gesture handling
code. Because we don't do anything which will require us to use IDs. Where as
for rotation code because angle is computed with the finger placement, it seems
that this *is* the source. 
<sh_zam> windragon: yes, but we calculate delta between fingers and assume them
to be in order always:
https://invent.kde.org/szaman/krita/blob/6c46fcbc1324b50756ff2e36b748c49c301ebec1/libs/ui/input/kis_rotate_canvas_action.cpp#L155-156
<windragon> which is an incorrect assumption
<sh_zam> windragon: yes 
<windragon> sh_zam: but more importantly, there is no sign in the latter half
of the tablet log that it even acknowledged that the second finger has ever
been lifted from the touchscreen
<windragon> the touch point id changed, but the gesture handling probably
didn't pick that up

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to