Bug 426079

Summary: Unable to click Connect button with Stylus in applets using ExpandableListItem component
Product: [Frameworks and Libraries] libplasma Reporter: Christian Hersevoort <christian.hersevoort>
Component: componentsAssignee: Marco Martin <notmart>
Status: RESOLVED FIXED    
Severity: normal CC: nate, plasma-bugs, tysontanx
Priority: NOR Keywords: regression
Version: 5.73.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 5.86
Sentry Crash Report:

Description Christian Hersevoort 2020-09-01 21:32:48 UTC
SUMMARY

It's not possible to "click" on the "Connect" / "Disconnect" button in the NetworkManager applet with a stylus (of a Graphic Tablet). In my specific case it's a "Wacom Intuos PT S Pen"-stylus. The click seems go through the button and hit the "row", making it collapse. I uploaded a video to YouTube showing this bug. https://youtu.be/Yv4cr7Tfd1s

I think this bug was introduced with the 5.19.0 release, but it could be ealier but not earlier than the 5.18.0 release.

Note; This issue is not specific to the NetworkManager applet but also applies to Bluetooth applet "Connect" / "Disconnect" button.

STEPS TO REPRODUCE
1. Use a stylus to open NetworkManager applet
2. Use a stylus to select a Network
3. Use a stylus to click the "Connect"-button

OBSERVED RESULT
The click misses the button and makes the row colapse.

EXPECTED RESULT
The button is clicked and the row is not colapsed.


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Arch Linux kernel 5.8.5
(available in About System)
KDE Plasma Version: 5.19.5
KDE Frameworks Version: 5.73.0
Qt Version: 5.15.0

ADDITIONAL INFORMATION

Video on Youtube: https://youtu.be/Yv4cr7Tfd1s

Output: `xsetwacom --list devices`

Wacom Intuos PT S Pen stylus            id: 10  type: STYLUS
Wacom Intuos PT S Pad pad               id: 12  type: PAD
Wacom Intuos PT S Pen eraser            id: 22  type: ERASER


Output `xinput`

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Wacom Intuos PT S Pen stylus              id=10   [slave  pointer  (2)]
⎜   ↳ Wacom Intuos PT S Finger                  id=11   [slave  pointer  (2)]
⎜   ↳ Wacom Intuos PT S Pad pad                 id=12   [slave  pointer  (2)]
⎜   ↳ Logitech M310                             id=13   [slave  pointer  (2)]
⎜   ↳ Logitech K520                             id=14   [slave  pointer  (2)]
⎜   ↳ DLL07B0:01 044E:120B                      id=15   [slave  pointer  (2)]
⎜   ↳ DualPoint Stick                           id=16   [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                        id=21   [slave  pointer  (2)]
⎜   ↳ Wacom Intuos PT S Pen eraser              id=22   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Intel HID events                          id=17   [slave  keyboard (3)]
    ↳ Intel HID 5 button array                  id=18   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=19   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=20   [slave  keyboard (3)]
    ↳ Logitech K520                             id=23   [slave  keyboard (3)]
Comment 1 Nate Graham 2020-09-08 16:05:19 UTC
Can confirm with my stylus and touchscreen too. It's a problem in ExpandableListItem.
Comment 2 Nate Graham 2021-08-31 17:46:07 UTC
*** Bug 428914 has been marked as a duplicate of this bug. ***
Comment 3 Nate Graham 2021-08-31 17:49:16 UTC
This is working for me now with gestures turned off in the Wacom KCM (which is the new default, because if breaks touch events in Qt software)--with the caveat that the hit area is offset on X11 with 200% scale; I have to position the stylus twice as high as I would ordinarily need to. Let's see if that happens on Wayland too...
Comment 4 Nate Graham 2021-08-31 21:03:36 UTC
OK, on Wayland where the coordinates are mapped properly, I still cannot click it. Other ToolButtons are clickable, so it does seem to be an issue with just this component.
Comment 5 Nate Graham 2021-08-31 21:17:52 UTC
Git commit 0a519d059d29afd7899223484372630d9989f75b by Nate Graham.
Committed on 31/08/2021 at 21:16.
Pushed by ngraham into branch 'master'.

ExpandableListitem: Fix stylus input for buttons

Our TapHandler was eating stylus input, so it never made it to the
buttons.
FIXED-IN: 5.86

M  +3    -2    src/declarativeimports/plasmaextracomponents/qml/ExpandableListItem.qml

https://invent.kde.org/frameworks/plasma-framework/commit/0a519d059d29afd7899223484372630d9989f75b
Comment 6 Tyson Tan 2021-09-01 00:59:43 UTC
Thank you Nate! :D
Comment 7 Nate Graham 2021-09-01 03:02:42 UTC
You're welcome!