p2rkw / xf86-input-mtrack

Xorg Multitouch Trackpad Driver
GNU General Public License v2.0
489 stars 54 forks source link

Update to include X.Org X Server 1.20.3? #81

Closed daamiian closed 5 years ago

daamiian commented 5 years ago

I'm assuming this won't work due to my version for X server. I've tried to get xorg to read my conf file (I followed the instructions and I know what I'm doing with this) for a few hours of playing around with it but no dice. I installed synaptics (was using libinput) and it works straight out of the box, but when I repeat the process with mtrack, none of my options are used. The only explanation for me is that my version isn't allowing this to work for me. If I'm wrong, does anyone have any suggestions? I have a Lenovo flex 3-1470 running Arch.

svenper commented 5 years ago

I am using the driver with 1.20.3, which is working as with previous versions. Have you tested earlier versions? On my system I have to restart the touchpad kernel module (your name may be different from my bcm5974), and disable the usbmouse module, with these commands (put in rc.local or somesuch):

modprobe -r usbmouse
modprobe -r bcm5974
modprobe bcm5974

My config file /etc/X11/xorg.conf.d/50-mtrack.conf is like this (your event event7 may differ*):

Section "InputClass"
    Identifier "Multi-touch trackpad"
    Driver "mtrack"
    MatchDevicePath "/dev/input/event7"
#   Option "Sensitivity" "0.425"
    Option "Sensitivity" "0.16"
    Option "GestureWaitTime" "50"
    Option "IgnoreThumb" "true"
    Option "IgnorePalm" "true"
    Option "ScrollUpButton" "5"
    Option "ScrollDownButton" "4"
    Option "ScrollLeftButton" "7"
    Option "ScrollRightButton" "6"
###
    Option "ClickFinger1" "1"
    Option "ClickFinger2" "3"
    Option "ClickFinger3" "2"
###
    Option "ScrollCoastDuration" "0"
    Option "ScrollCoastEnableSpeed" "0"
EndSection

Section "InputClass"
    Identifier "Ignore duplicate mouse events"
    MatchOS "Linux"
    MatchDevicePath "/dev/input/mouse*"
    Option "Ignore" "on"
EndSection

* sudo udevadm info --query=all --name=/dev/input/event{1,2,3,...}

daamiian commented 5 years ago

@svenper I'm assuming your solution works, but I found a workaround for what I wanted out of mtrack anyways. Great info for anyone else looking for a solution!

jmnel commented 5 years ago

I am also unable to get xorg 1.20.3 to load mtrack. I dont have a usbmouse kernel module, and reloading bcm5972 does not work. That's the correct touchpad driver for my device. Setting device path in xorg conf also does not help.

Any suggestions?

daamiian commented 5 years ago

@jmnel, no matter what I did, mtrack wouldn't work for me. I tried tons and tons of suggestions on forums for days, and nothing. What I did was just go for libinput and installing their gestures package. The only reason I wanted mtrack was for the gestures anyways so libinput gestures did the trick for me and I have yet to see issues. Dealing with these things requires some tweaking depending on your laptop (or whatever you're using), so my best advice is to use libinput if it suits your use case, otherwise I'm afraid I don't have any other suggestions. Good luck!