Properties are initialized on the correct devices only but on resume we'd just blindly apply the config from our device. Depending on the resume order, this would mean we'd apply a previously set config with a default config. Example: * pointer device with keyboard subdevice * pointer device exports natural scrolling, keyboard device does not and remains at default (off) * client enables natural scrolling on the pointer device * VT switch away, VT switch back * pointer device gets enabled first, enables natural scrolling on the libinput device * keyboard device gets enabled second, resets to the default value Reported-by: Yuxuan Shui <yshuiv7@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Tested-by: Yuxuan Shui <yshuiv7@gmail.com>
xf86-input-libinput - a libinput-based X driver
The official repository for this driver is http://cgit.freedesktop.org/xorg/driver/xf86-input-libinput/
This is an X driver based on libinput. It is a thin wrapper around libinput, so while it does provide all features that libinput supports it does little beyond.
WARNING: misconfiguration of an X input driver may leave you without usable input devices in your X session. Use with caution.
Prerequisites
To build, you'll need the X.Org X server SDK (check your distribution for a xorg-x11-server-devel package or similar) and libinput (check your distribution for libinput-devel or similar).
To get libinput from source, see: http://www.freedesktop.org/wiki/Software/libinput/
To build the X server from source: http://www.x.org/wiki/Building_the_X_Window_System/
Building
To build this driver:
autoreconf -vif
./configure --prefix=$HOME/build
make && make install
Note that this assumes the same prefix as used in "Building the X Window System" above, adjust as required. If you want a system install, use a prefix of /usr.
Install the default configuration file:
cp conf/99-libinput.conf /etc/X11/xorg.conf.d/
This will assign this driver to all devices. Use with caution.
Bugs
Bugs in libinput go to the "libinput" component of wayland: https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland
Bugs in this driver go to the "Input/libinput" component of xorg: https://bugs.freedesktop.org/enter_bug.cgi?product=xorg