summaryrefslogtreecommitdiffstats
path: root/src/plugins/generic/evdevtouch/README
blob: fca277010647edd8c01e8bbf732ceed7213191a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Generic plug-in for evdev multiple touch (ABS_MT) events.
Supports protocol type A & B.
Type B is supported both directly and via libmtdev.
Single-touch devices reporting ABS_X and Y only are not supported
by this plugin. Use tslib or evdevmouse instead.

The protocol type will be detected automatically.
To enable libmtdev support uncomment the USE_MTDEV define in
evdevtouch.pro.

Tested with the following kernel drivers:
  bcm5974 (type A)
  hid_magicmouse (type A with ABS_MT_TRACKING_ID) (type B over libmtdev)
  wacom (type B)

To use this "driver", pass -plugin EvdevTouch on the command line.

If automatic detection does not work, use -plugin
EvdevTouch:/dev/input/eventN to explicitly set the device file
name.

By default the surface of the touch device is mapped to the entire
screen. If this is not desired, pass force_window in the plugin
specification as shown in the example above. This will cause mapping
the touch surface to the active window instead. For example:
./fingerpaint -plugin EvdevTouch:force_window

Only touch events are generated, mouse events are not. Be aware however
that ignored touch events will generate a mouse event from the first
touch point by default. See AA_SynthesizeMouseForUnhandledTouchEvents.

If no evdev events are read, X may be grabbing the device.
Disable the synaptics driver from X or temporarily disable the device
by running xinput set-prop <device> <device enabled property> 0.
Use xinput list and xinput list-props to figure out the values.

When not running on a windowing system (eglfs, kms, etc.) and having a
touchpad, the evdevmouse and touch plugins can be combined to get both
mouse and touch events:
./app -platform kms -plugin EvdevTouch -plugin EvdevMouse

If the input device cannot be accessed, set up a udev rule.
For example:
  sudo cp 70-qtouchscreen.rules /etc/udev/rules.d
  sudo udevadm trigger --subsystem-match=input
The sample udev rule matches any touchpad or touchscreen device.
If there are multiple ones, specify the device manually as described above.