I use a trackball mouse (Kensington USB Orbit), which does not have a scroll wheel. I rely on Middle Emulation to scroll by holding both mouse buttons. Earlier this year (est. May 2021) I noticed Middle Emulation had stopped working on my system. I looked into it recently and found that although I can set the "libinput Middle Emulation Enabled" property to true using:
xinput set-prop "Kensington USB Orbit" "libinput Middle Emulation Enabled" "1"
the property is not being set on startup. I have a 10-libinput.conf which has worked for me in the past. Note the line:
Option "MiddleEmulation" "true"
I looked at my .local/share/xorg/Xorg.1.log
Xorg.1.log and found that the property is being read and recognized on startup of the system:
[ 16.196] (**) Option "MiddleEmulation" "true"
So, I believe there is a problem with how MiddleEmulation is being set in libinput, after it is read out of an Xorg conf. The feature is functional when I manually enable it using xinput
, so the issue is isolated to the read from the configuration file on startup.
Included a dump of xinput list-props
for my device if that's helpful: list-props.txt