• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. _config_options:
2
3==============================================================================
4Configuration options
5==============================================================================
6
7Below is a list of configurable options exposed to the users.
8
9.. hint:: Not all configuration options are available on all devices. Use
10	  :ref:`libinput list-devices <libinput-list-devices>` to show the
11	  configuration options for local devices.
12
13libinput's configuration interface is available to the caller only, not
14directly to the user. Thus is is the responsibility of the caller to expose
15the various options and how these options are exposed. For example, the
16xf86-input-libinput driver exposes the options through X Input device
17properties and xorg.conf.d options. See the `libinput(4)
18<https://www.mankier.com/4/libinput>`_ man page for more details.
19
20
21------------------------------------------------------------------------------
22Tap-to-click
23------------------------------------------------------------------------------
24
25See :ref:`tapping` for details on how this feature works. Configuration
26options exposed by libinput are:
27
28- how many tapping fingers are supported by this device
29- a toggle to enable/disable tapping
30- a toggle to enable/disable tap-and-drag, see :ref:`tapndrag`.
31- a toggle to enable/disable tap-and-drag drag lock see :ref:`tapndrag`
32- The default order is 1, 2, 3 finger tap mapping to left, right, middle
33  click, respectively. This order can be changed to left, middle, right click,
34  respectively.
35
36Tapping is usually available on touchpads and the touchpad part of external
37graphics tablets. Tapping is usually **not** available on touch screens,
38for those devices it is expected to be implemented by the toolkit.
39
40------------------------------------------------------------------------------
41Send Events Mode
42------------------------------------------------------------------------------
43
44The Send Events Mode is libinput's terminology for disabling a device. It is
45more precise in that the device only stops sending events but may not get
46fully disabled. For example, disabling the touchpad on a
47:ref:`Lenovo T440 and similar <t440_support>` leaves the top software
48buttons enabled for the trackpoint. Available options are
49**enabled** (send events normally), **disabled** ( do not send events),
50**disabled on external mouse** (disable the device while an external mouse
51is plugged in).
52
53
54.. _config_pointer_acceleration:
55
56------------------------------------------------------------------------------
57Pointer acceleration
58------------------------------------------------------------------------------
59
60Pointer acceleration is a function to convert input deltas to output deltas,
61usually based on the movement speed of the device, see
62:ref:`pointer-acceleration` for details.
63
64Pointer acceleration is normalized into a [-1, 1] range, where -1 is
65"slowest" and 1 is "fastest". Most devices use a default speed of 0.
66
67The pointer acceleration profile defines **how** the input deltas are
68converted, see :ref:`ptraccel-profiles`. Most devices have their default
69profile (usually called "adaptive") and a "flat" profile. The flat profile
70does not apply any acceleration.
71
72------------------------------------------------------------------------------
73Scrolling
74------------------------------------------------------------------------------
75
76"Natural scrolling" is the terminology for moving the content in the
77direction of scrolling, i.e. moving the wheel or fingers down moves the page
78down. Traditional scrolling moves the content in the opposite direction.
79Natural scrolling can be turned on or off, it is usually off by default.
80
81The scroll method defines how to trigger scroll events. On touchpads
82libinput provides two-finger scrolling and edge scrolling. Two-finger
83scrolling converts a movement with two fingers to a series of scroll events.
84Edge scrolling converts a movement with one finger along the right or bottom
85edge of the touchpad into a series of scroll events.
86
87On other libinput provides button-scrolling - movement of the device while
88the designated scroll button is down is converted to scroll events. The
89button used for scrolling is configurable.
90
91The scroll method can be chosen or disabled altogether but most devices only
92support a subset of available scroll methods. libinput's default is
93two-finger scrolling for multi-touch touchpads, edge scrolling for
94single-touch touchpads. On tracksticks, button scrolling is enabled by
95default.
96
97See :ref:`scrolling` for more details on how the scroll methods work.
98
99------------------------------------------------------------------------------
100Left-handed Mode
101------------------------------------------------------------------------------
102
103Left-handed mode switches the device's functionality to be more
104accommodating for left-handed users. On mice this usually means swapping the
105left and right mouse button, on tablets this allows the tablet to be used
106upside-down to present the pad buttons for the non-dominant right hand. Not
107all devices have left-handed mode.
108
109Left-handed mode can be enabled or disabled and is disabled by default.
110
111------------------------------------------------------------------------------
112Middle Button Emulation
113------------------------------------------------------------------------------
114
115Middle button emulation converts a simultaneous left and right button click
116into a middle button. The emulation can be enabled or disabled. Middle
117button emulation is usually enabled when the device does not provide a
118middle button.
119
120------------------------------------------------------------------------------
121Click method
122------------------------------------------------------------------------------
123
124The click method defines how button events are triggered on a :ref:`clickpad
125<clickpad_softbuttons>`. When set to button areas, the bottom area of the
126touchpad is divided into a left, middle and right button area. When set to
127clickfinger, the number of fingers on the touchpad decide the button type.
128Clicking with 1, 2, 3 fingers triggers a left, right, or middle click,
129respectively. The default click method is software button areas. Click
130methods are usually only available on :ref:`clickpads
131<clickpad_softbuttons>`.
132
133------------------------------------------------------------------------------
134Disable while typing
135------------------------------------------------------------------------------
136
137DWT is the most generic form of palm detection on touchpad. While the user
138is typing on an internal keyboard the touchpad is disabled, the touchpad
139is enabled again after a timeout.  See :ref:`disable-while-typing` for more
140info.
141
142Disable-while-typing can be enabled or disabled, it is enabled by default on
143most touchpads.
144
145------------------------------------------------------------------------------
146Calibration
147------------------------------------------------------------------------------
148
149Calibration is available for some direct-input devices (touch screens,
150graphics tablets, etc.). The purpose of calibration is to ensure the input
151lines up with the output and the configuration data is a transformation
152matrix. It is thus not expected that the user sets this option. The desktop
153environment should provide an interface for this.
154
155------------------------------------------------------------------------------
156Rotation
157------------------------------------------------------------------------------
158
159The device rotation applies a corrective angle to relative input events.
160This is currently only available on trackpoints which may be used sideways
161or upside-down. The angle can be freely chosen but not all devices support
162rotation other than 0, 90, 180, or 270 degrees. Rotation is off (0 degrees)
163by default.
164