2023-06-12 13:41:53 +10:00
|
|
|
.. _ignoring_devices:
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
Ignoring specific devices
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
|
|
If a device has the **LIBINPUT_IGNORE_DEVICE** udev property set to any
|
|
|
|
|
value but "0", that device is not initialized by libinput.
|
|
|
|
|
For a context created with **libinput_udev_create_context()**, the device is
|
|
|
|
|
silently ignored and never shows up. If the device is added with
|
|
|
|
|
**libinput_path_add_device()** to a context created with
|
|
|
|
|
**libinput_path_create_context()**, adding the device will fail and return NULL
|
|
|
|
|
(see that function's documentation for more
|
|
|
|
|
information).
|
|
|
|
|
|
|
|
|
|
If the property value is exactly "0", then the property is considered unset
|
|
|
|
|
and libinput initializes the device normally.
|
|
|
|
|
|
|
|
|
|
This property should be used for devices that are correctly detected as
|
|
|
|
|
input devices (see :ref:`udev_device_type`) but that should not be used by
|
|
|
|
|
libinput. It is recommended that devices that should not be handled as input
|
|
|
|
|
devices at all unset the **ID_INPUT** and related properties instead. The
|
|
|
|
|
**LIBINPUT_IGNORE_DEVICE** property signals that only libinput should
|
|
|
|
|
ignore this property but other parts of the stack (if any) should continue
|
|
|
|
|
treating this device normally.
|
|
|
|
|
|
|
|
|
|
Below is an example udev rule to assign **LIBINPUT_IGNORE_DEVICE** to the
|
|
|
|
|
device with the vendor/model ID of ``012a``/``034b``. ::
|
|
|
|
|
|
|
|
|
|
$ cat /etc/udev/rules.d/99-ignore-my-device.rules
|
2023-06-14 09:16:27 +10:00
|
|
|
ACTION!="remove", KERNEL=="event[0-9]*", \
|
2023-06-12 13:41:53 +10:00
|
|
|
ENV{ID_VENDOR_ID}=="012a", \
|
|
|
|
|
ENV{ID_MODEL_ID}=="034b", \
|
|
|
|
|
ENV{LIBINPUT_IGNORE_DEVICE}="1"
|
|
|
|
|
|
|
|
|
|
See :ref:`udev_config` for more details on libinput's udev properties.
|