wayfire icon indicating copy to clipboard operation
wayfire copied to clipboard

Add mouse scroll

Open PeterOGB opened this issue 2 years ago • 6 comments

PeterOGB avatar Oct 18 '23 16:10 PeterOGB

Here are the changes to add mouse button scrolling.

PeterOGB avatar Oct 18 '23 16:10 PeterOGB

On Thu, 2023-10-19 at 03:45 -0700, Ilia Bozhinov wrote:

@ammen99 requested changes on this pull request. I wonder: How would the user figure out which button to use, when they have integer numbers? Where does the number come from? Would it be possible to for example use string button names left/right/etc or maybe BTN_LEFT/BTN_RIGHT/etc (the latter are evdev button names, I am not sure if they are applicable here).

In the case of mice with more than three buttons I don't know if there is any consistent numbering scheme.

On previous systems I have used the information and example configurations for libinput from https://wiki.archlinux.org/title/Logitech_Marble_Mouse

I assume similar information can be found for other multi-button devices.

We already have an option which is unfortunately called simply scroll_method and is applied for touchpads, whereas this is exclusively for mice .. I wonder whether it will make sense to figure out support for per-device settings before we add even more duplicated options.

I see your point. I was simply going on the existence of "input.mouse_scroll_speed" to make the option "input.mouse_scroll_button" similarly named. Likewise "input.mouse_scroll_method" seemed to fit the pattern.

Alternatively (and will probably be the easier solution atm): does the scroll method setting actually influence 'real' mice (as opposed to touchpads and whatever hardware you have)?

I don't have any "real" mice connected to any of my machines so I don't know, but I'll go see if I can find one and give it a try.

If it does not, then maybe we can just have one single global option for scroll method, which is applied to all devices. TLDR: I don't like that we have duplicate options for scroll_method.

I understand.

PeterO

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.

PeterOGB avatar Oct 19 '23 12:10 PeterOGB

I now have a Logitech trackball (with four buttons) , an HP mouse (with three buttons and scroll wheel) and a Wacom Intuos BT M Pad and Pen (with four buttons on the tablet and two buttons on the pen) connected so I can try and figure out a way to configure for them all: -) The libinput tool is providing useful information on them all.

PeterOGB avatar Oct 19 '23 19:10 PeterOGB

Tablet input is unrelated to these libinput settings - but it would be great to figure out if this option interferes with regular mice. If it doesn't, we can just use one option which is set for all devices.

ammen99 avatar Oct 19 '23 20:10 ammen99

But looking at the output from liboutput list-devices for as many different device types will help ensure there are no unexpected consequences. For example I do now know that tablets return LIBINPUT_CONFIG_SCROLL_NO_SCROLL !

PeterOGB avatar Oct 19 '23 20:10 PeterOGB

Not particularly about this PR but just wanted to mention that, button scrolling is an incredibly useful feature for graphics tablets / styluses as we lack pen interactions a lot in comparison to touch (where some clients nicely scroll on swipe etc) in our ecosystem :P

Beryesa avatar Dec 18 '23 23:12 Beryesa