Bug 452443

Summary: Left-handed mode is only applied to currently connected mouse, not all mice
Product: [Applications] systemsettings Reporter: dominik.klementowski
Component: kcm_mouseAssignee: Plasma Bugs List <plasma-bugs>
Status: CONFIRMED ---    
Severity: normal CC: nate, oliver
Priority: NOR Keywords: usability
Version: 5.24.4   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Mouse settings - the first checkbox is for 'left handed mode'. It is checked but doesn't work

Description dominik.klementowski 2022-04-09 19:19:31 UTC
Created attachment 148076 [details]
Mouse settings - the first checkbox is for 'left handed mode'. It is checked but doesn't work

SUMMARY
Lefty Plasma user here. My mouse can work both wired and wireless. It came with its own dongle for wireless connection, but I plug it via cable to refill the battery. When plugged, it's working through the cable as different device.

Here's the lsusb entry for wiereless adapter:
Bus 003 Device 009: ID 258a:002f SINOWEALTH 2.4G Wireless Receiver
and here's the mouse plugged via cable
Bus 003 Device 010: ID 258a:002e SINOWEALTH Wired Gaming Mouse

When connected, the 'Wireless Receiver' is still there, but it's not doing anything. When I enable 'Left handed mode' it works as usual on the mouse that was active by the time, but switching the mouse (by plugging or unplugging cable) sort of disables the setting, even though it's still checked. The only way to enable left-handed mode is to uncheck it, apply, then check and apply again. When I do so, it doesn't work anymore when either unplugging or plugging mouse. The setting is active again when switching back to the mode that I was setting it for.

It behaves like there was an intention to make it configurable per-device, which would be sweet (and better than typical single global setting like in GNOME), but there's no any control of which device it is for, so it should have some drop-down like in touchpad or gamepad sections.

STEPS TO REPRODUCE
1. Find two USB mice
2. Connect one, set left handed-mode
3. Mouse buttons are now swapped
4. Disconnect it and connect another one
5. Mouse buttons are not swapped despite the setting being enabled
6. Uncheck it, apply, check it again and apply. Buttons are swapped again
7. Disconnect it and connect previous mouse
8. Go to 5. 

OBSERVED RESULT
Left-handed mode setting is not persistent across devices and there is no option to set them separately.

EXPECTED RESULT
Left-handed mode should be persistent across devices or there should be option to set them separately.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Arch Linux 
KDE Plasma Version: 5.24.4
KDE Frameworks Version: 5.92.0
Qt Version: 5.15.3

ADDITIONAL INFORMATION
Comment 1 Nate Graham 2022-04-11 18:07:02 UTC
Yeah, this should probably be a global setting and not a per-device setting. Your handedness doesn't change based on the hardware. :)
Comment 2 dominik.klementowski 2022-04-11 19:22:47 UTC
(In reply to Nate Graham from comment #1)
> Yeah, this should probably be a global setting and not a per-device setting.
> Your handedness doesn't change based on the hardware. :)

That's true, but actually there are rare devices on the market that have those button reversed by design. I still have one of those profiled lefty mice lying around somewhere. There are also ones that let you change the bindings in firmware. The real question is whether we want the flexibility to cover edge cases, or to reduce confusion in UX, steps to configure all your peripherals etc. In this case, I'm happy with both options.
Comment 3 oliver 2022-05-26 10:25:18 UTC
This also occurs when a USB mouse is disconnected and then reconnected.
Comment 4 dominik.klementowski 2022-05-26 12:35:30 UTC
(In reply to oliver from comment #3)
> This also occurs when a USB mouse is disconnected and then reconnected.

I tried to reproduce that and I noticed something interesting. This time I used my Thinkpad instead of desktop PC. I cannot reproduce this issue at all here. Moreover I can set up different pointing devices and it respects those settings even if I swap USB ports (tried with 2 different mice and builtin buttons for trackpoint). It shows a dropdown where I can choose a device and set it up separately. There's no such dropdown on my main PC. They have almost exact software setup (Arch + KDE 5.24.5). I'm curious how the KCM module decide to show the dropdown or not, but I'm a noob debugging KDE projects, but I've set up the dev environment and I'm looking forward to mess around. Could somebody make a hint on which package should I look for to try and understand how it works? Maybe I'll experiment a little and try to fix. It looks like the problem might vary depending on hardware.
Comment 5 oliver 2022-05-26 13:03:05 UTC
(In reply to dominik.klementowski from comment #4)
> (In reply to oliver from comment #3)
> > This also occurs when a USB mouse is disconnected and then reconnected.
> 
> I tried to reproduce that and I noticed something interesting. This time I
> used my Thinkpad instead of desktop PC. I cannot reproduce this issue at all
> here. Moreover I can set up different pointing devices and it respects those
> settings even if I swap USB ports (tried with 2 different mice and builtin
> buttons for trackpoint). It shows a dropdown where I can choose a device and
> set it up separately. There's no such dropdown on my main PC. They have
> almost exact software setup (Arch + KDE 5.24.5). I'm curious how the KCM
> module decide to show the dropdown or not, but I'm a noob debugging KDE
> projects, but I've set up the dev environment and I'm looking forward to
> mess around. Could somebody make a hint on which package should I look for
> to try and understand how it works? Maybe I'll experiment a little and try
> to fix. It looks like the problem might vary depending on hardware.

In my haste I forgot to add that I'm using Fedora 35/X11/KDE 5.24.4. The laptop is a generic laptop available from a company specializing in Linux hardware in Germany: Tuxedo Computers.
Comment 6 dominik.klementowski 2022-05-26 14:11:06 UTC
(In reply to oliver from comment #5)
> (In reply to dominik.klementowski from comment #4)
> > (In reply to oliver from comment #3)
> > > This also occurs when a USB mouse is disconnected and then reconnected.
> > 
> > I tried to reproduce that and I noticed something interesting. This time I
> > used my Thinkpad instead of desktop PC. I cannot reproduce this issue at all
> > here. Moreover I can set up different pointing devices and it respects those
> > settings even if I swap USB ports (tried with 2 different mice and builtin
> > buttons for trackpoint). It shows a dropdown where I can choose a device and
> > set it up separately. There's no such dropdown on my main PC. They have
> > almost exact software setup (Arch + KDE 5.24.5). I'm curious how the KCM
> > module decide to show the dropdown or not, but I'm a noob debugging KDE
> > projects, but I've set up the dev environment and I'm looking forward to
> > mess around. Could somebody make a hint on which package should I look for
> > to try and understand how it works? Maybe I'll experiment a little and try
> > to fix. It looks like the problem might vary depending on hardware.
> 
> In my haste I forgot to add that I'm using Fedora 35/X11/KDE 5.24.4. The
> laptop is a generic laptop available from a company specializing in Linux
> hardware in Germany: Tuxedo Computers.

Do you see the drop-down for picking a device (first item in mouse settings)? It should be there even if you only have one mouse connected (although grayed out and disabled). For me it works fine on Thinkpad X1 Carbon 6th Gen, but on my desktop PC with B450M-A motherboard there's no such drop-down.
Comment 7 oliver 2022-05-27 07:35:13 UTC
(In reply to dominik.klementowski from comment #6)
> (In reply to oliver from comment #5)
> > (In reply to dominik.klementowski from comment #4)
> > > (In reply to oliver from comment #3)
> > > > This also occurs when a USB mouse is disconnected and then reconnected.
> > > 
> > > I tried to reproduce that and I noticed something interesting. This time I
> > > used my Thinkpad instead of desktop PC. I cannot reproduce this issue at all
> > > here. Moreover I can set up different pointing devices and it respects those
> > > settings even if I swap USB ports (tried with 2 different mice and builtin
> > > buttons for trackpoint). It shows a dropdown where I can choose a device and
> > > set it up separately. There's no such dropdown on my main PC. They have
> > > almost exact software setup (Arch + KDE 5.24.5). I'm curious how the KCM
> > > module decide to show the dropdown or not, but I'm a noob debugging KDE
> > > projects, but I've set up the dev environment and I'm looking forward to
> > > mess around. Could somebody make a hint on which package should I look for
> > > to try and understand how it works? Maybe I'll experiment a little and try
> > > to fix. It looks like the problem might vary depending on hardware.
> > 
> > In my haste I forgot to add that I'm using Fedora 35/X11/KDE 5.24.4. The
> > laptop is a generic laptop available from a company specializing in Linux
> > hardware in Germany: Tuxedo Computers.
> 
> Do you see the drop-down for picking a device (first item in mouse
> settings)? It should be there even if you only have one mouse connected
> (although grayed out and disabled). For me it works fine on Thinkpad X1
> Carbon 6th Gen, but on my desktop PC with B450M-A motherboard there's no
> such drop-down.

No, when I plug the mouse back in, there is no drop-down. It just silently reverts back to right-handed.