Bug 504013 - Add option to rebind On-Button-Scrolling from middle click to other keys.
Summary: Add option to rebind On-Button-Scrolling from middle click to other keys.
Status: REPORTED
Alias: None
Product: kwin
Classification: Plasma
Component: libinput (other bugs)
Version First Reported In: unspecified
Platform: unspecified Unspecified
: NOR wishlist
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-05-10 13:35 UTC by Nikoichu
Modified: 2025-10-15 19:08 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nikoichu 2025-05-10 13:35:15 UTC
Full thead detailing reasons and implementations in-depth:
https://discuss.kde.org/t/improvements-to-autoscrolling-middle-click-and-drag-to-scroll/34011/1

Split from this issue: https://bugs.kde.org/show_bug.cgi?id=503998 as per cwo's suggestion.

Autoscrolling / On-button-scrolling / "Hold middle click and move mouse to scroll" feature from the mouse settings menu should be rebind-able to other hotkeys that are not middle-click, including other mouse buttons (even non-standard ones, but that might require custom mouse drivers?) and keyboard keys.
Comment 1 cwo 2025-05-13 08:57:37 UTC Comment hidden (spam)
Comment 2 cwo 2025-05-13 09:00:13 UTC Comment hidden (spam)
Comment 3 rudrapratapsingh 2025-05-30 05:58:43 UTC
I would like to see this rebind feature added for on-button-scrolling.
Many applications have a different feature when you hold down middle mouse button, so enabling it makes those features unusable.
Comment 5 Nikoichu 2025-05-30 08:05:05 UTC
(In reply to cwo from comment #4)
> Libinput has this feature:
> https://wayland.freedesktop.org/libinput/doc/1.11.3/group__config.
> html#gac95a25055b22c3631e3c10c0463ca332

That's great! :)
Is it exposed through the GUI though, or does it require setting it manually through manual file edits or running scripts?
Comment 6 cwo 2025-05-30 08:24:32 UTC
(In reply to Nikoichu from comment #5)
> That's great! :)
> Is it exposed through the GUI though, or does it require setting it manually
> through manual file edits or running scripts?

Not exposed in the ui at present, it's only a libinput option (and tbh I don't know off-hand how to enable it manually).
Comment 7 rudrapratapsingh 2025-05-30 15:32:03 UTC
In the mean time it gets implemented, I found a workaround for my Arch based system, with the help of Arch Wiki (check libinput)
1. Install libinput-config,  paru -S libinput-config (arch wiki suggested libinput-config-git, but it didn't work for me)
2. create a file, /etc/libinput.conf
3. Put the following in the file,
override-compositor=enabled
scroll-button=0x114
4. Reboot

You can check for the mouse buttons codes here, https://github.com/torvalds/linux/blob/bb7c241fae6228e89c0286ffd6f249b3b0dea225/include/uapi/linux/input-event-codes.h#L355

I was playing with the scroll wheel when I first rebooted and my PC got stuck in a loop, so don't do that I guess.
Comment 8 KOPRajs 2025-10-15 19:08:39 UTC
Please also consider making the option toggleable (it is common in Windows). In such case you don't have to hold the key/button down during scrolling. Pressing the key once switch the scrolling by mouse on and another press switch it off. It is common practice to change the mouse cursor, when the auto scrolling is active.