Multitouch gestures with synaptics driver on X11, Linux
xSwipe is multitouch gesture recognizer. This script make your linux PC able to recognize swipes.
Ubuntu15.04, or later
I released Fusuma, it use libinput driver and suppport pinch zoom .
You should try Fusuma instead of xSwipe if you use Ubuntu15.04, or later. It need not depend on older version synaptics driver, and it works well with libinput driver supported by 15.04 or later as standard.
Before running the script, you must first do some preparations.
Type below code, download xSwipe from github
$ cd ~ $ wget https://github.com/iberianpig/xSwipe/archive/master.zip $ unzip master.zip
To install libx11-guitest-perl from synaptic package manager Or run the script on the terminal run as
$ sudo apt-get install libx11-guitest-perl
$ sudo apt-get install -y git build-essential libevdev-dev autoconf automake libmtdev-dev xorg-dev xutils-dev libtool $ sudo apt-get remove -y xserver-xorg-input-synaptics $ git clone https://github.com/Chosko/xserver-xorg-input-synaptics.git $ cd xserver-xorg-input-synaptics $ ./autogen.sh $ ./configure --exec_prefix=/usr $ make $ sudo make install
Open /etc/X11/xorg.conf.d/50-synaptics.conf with your favorite text editor and edit it to enable SHMConfig
$ sudo gedit /etc/X11/xorg.conf.d/50-synaptics.conf
NOTE:You will need to create the /etc/X11/xorg.conf.d/ directory and create 50-synaptics.conf if it doesn't exist yet.
$ sudo mkdir /etc/X11/xorg.conf.d/
Section "InputClass" Identifier "evdev touchpad catchall" Driver "synaptics" MatchDevicePath "/dev/input/event*" MatchIsTouchpad "on" Option "Protocol" "event" Option "SHMConfig" "on" EndSection
To reflect SHMConfig, restart your session.
That's it for preparation.
To run xSwipe, type below code on terminal.
$ perl ~/xSwipe-master/xSwipe.pl
Note:You should run xSwipe.pl in same directory as "eventKey.cfg" .
You can use "swipe" with 3 or 4 fingers, they can call an event. Additionally, some gestures are available.
-d RATE: RATE is sensitivity to swipe.Default value is 1. Shorten swipe-length by half (e.g.,
$ perl xSwipe.pl -d 0.5)
-m INTERVAL: INTERVAL is how often synclient monitor changes to the touchpad state. Default value is 10(ms). Set 50ms as monitoring-span. (e.g.,
$ perl xSwipe.pl -m 50)
-n: Natural scroll like Macbook, use "/nScroll/eventKey.cfg".
-e: Enable edge-swipe
You can customize the settings for gestues to edit eventKey.cfg. Please check this article, "How to customize gesture".
Please let me know if you have any questions about this program.