After using Manjaro with Logitech MX Master 3 mouse for a few days, I noticed that vertical scroll doesn’t work the same way as on Fedora.
First of all, I use Solaar with the following settings:
In the ratchet mode there is still some scrolling happens when I move the wheel for a less then one step of a ratchet.
In the Dolphin file manager, Ctrl + Scroll to zoom doesn’t work reliably. I need to scroll really fast to actually zoom in/out
In the Firefox the first scroll step is sometimes skipped
I tried switching to LTS kernel 5.10 but the issues persist.
I don’t have all these issues on my Fedora 35 test system and I’m wondering what is causing the difference. The Solaar setup on Fedora is exactly the same.
I use the middle mouse button to open a link in a new tab 25-100 times a day, and it’s incredibly difficult in Manjaro with KDE. The mouse wheel has absolutely no deadzone / detent, so when I press the middle mouse button it will scroll the webpage by just enough to miss the link. Sometimes it takes 3-5 tries to actually hit the link.
EDIT: So I was able to resolve my issue by installing Solaar from the AUR. Then in Solaar I disabled “Scroll Wheel Resolution” which seems to control whether the scrolling is discrete or continuous. I also had to manually make Solaar start on boot using the instructions on the Solaar Github. That made the scrolling discrete, but extremely slow. I was able to fix this by installing libinput-multiplier from the AUR.
The scroll wheel sensitivity is controlled by /tmp/libinput_discrete_deltay_multiplier which is set to 1 by default for me.
I made a scroll-fix.sh script with these contents:
After some further searching I found another possible solution on Tumbleweed forum. Seems like the recent release of libinput introduced so called high resolution wheel scrolling. And it doesn’t play well with Logitech MX Master mice.
So the workaround is pretty simple: disable the high resolution scrolling by creating a file /etc/libinput/local-overrides.quirks with the contents:
/etc/libinput/local-overrides.quirks
[Logitech MX Master 3]
MatchVendor=0x46D
MatchProduct=0x4082
ModelInvertHorizontalScrolling=1
AttrEventCodeDisable=REL_WHEEL_HI_RES;REL_HWHEEL_HI_RES;
# MX Master 3 has a different PID on bluetooth
[Logitech MX Master 3]
MatchVendor=0x46D
MatchProduct=0xB023
ModelInvertHorizontalScrolling=1
AttrEventCodeDisable=REL_WHEEL_HI_RES;REL_HWHEEL_HI_RES;
Vendor and Product ID of other Logitech mice can be found here: /usr/share/libinput/30-vendor-logitech.quirks