Сделать устройство ввода (мышь) «недоступным» для рабочего стола

Сделать устройство ввода (мышь) «недоступным» для рабочего стола

Я ищу способ предотвратить использование указателя (в частности, пера графического планшета) в качестве обычного указателя ввода в X11 или Wayland. Однако я хотел бы по-прежнему иметь возможность оценивать щелчки и перемещения в моей программе. Поэтому, по сути, привяжите вывод этого пера к моему приложению, в идеале независимо от того, есть ли у него фокус или нет.

В X11 устройства можно сделать «плавающими», что не позволит использовать их в качестве универсальных устройств ввода, но я не уверен, можно ли сделать то же самое в Wayland и как это сделать.

Каков наилучший способ этого добиться?

решение1

Вы пробовали xinput?

xinput выведет список устройств ввода в X пример вывода

Виртуальный указатель ядра id=2 [главный указатель (3)] ↳ Виртуальный указатель XTEST ядра id=4 [подчиненный указатель (2)] ↳ USB-оптическая мышь id=8 [подчиненный указатель (2)]

затем используйте 'xinput -disable 8', чтобы отключить оптическую мышь для X

Вы сможете получать входные данные из файлов /dev/input/event*, например, попробовав утилиту «evtest» для вашего приложения!

Для wayland, похоже, есть похожие утилиты, см., например, команды sway-input или, может быть, libinput (но я смог найти только функцию отключения для sway-input...)

Связанный контент