Поиск по сайту:

Автоматическое скрытие указателя мыши с помощью Unclutter через определенное время

Киоск-устройства круглосуточно запускают одно приложение без какого-либо взаимодействия с пользователем. Большую часть времени им даже не нужна клавиатура или мышь. Одной из распространенных проблем киоск-устройств является указатель мыши. Когда веб-приложение работает в режиме киоска, указатель мыши может отвлекать пользователей или блокировать область, на которую смотрит пользователь. Даже если вы уберете мышь, вы все равно увидите курсор мыши. К счастью, мы можем автоматически скрывать указатель мыши с помощью приложения Unclutter через определенный период времени, когда на рабочих столах Linux нет движения мыши.

Что такое беспорядок?

Unclutter — это приложение командной строки, которое постоянно работает в фоновом режиме сеанса X11.

Unclutter отслеживает положение указателя мыши каждые несколько секунд. Когда он обнаруживает, что мышь не перемещается, или на ней не нажаты никакие кнопки, или курсор находится не в корневом окне, он скрывает изображение неактивного курсора и не позволяет курсору мешать.

Это очень полезно в ситуациях (например, при мозаичном оконном менеджере), когда вы не часто используете мышь. Чтобы вернуть указатель мыши, просто переместите мышь или нажмите любую кнопку мыши.

Как работает Unclutter

Технически говоря, приложение «Упорядочение» скрывает указатель мыши, создавая небольшое подокно в качестве дочернего элемента окна, в котором находится курсор. В новом окне устанавливается курсор размером 1x1, но маска всех 0, т. е. невидимый курсор. После создания программа ждет, пока указатель покинет окно, а затем уничтожает его, восстанавливая исходное положение. События кнопок прозрачно передаются в родительское окно. Обычно они вызывают повторное появление курсора, поскольку программа будет выполнять активный захват, пока кнопка нажата, поэтому указатель, очевидно, покинет окно, даже если его положение x, y не изменится.

Установите Unclutter в Linux

Приложение Unclutter доступно в репозиториях по умолчанию многих операционных систем Linux и Unix.

Чтобы установить Unclutter в Arch Linux и его вариантах, таких как Manjaro Linux, запустите:

sudo pacman -S unclutter

В Debian, Ubuntu, Linux Mint:

sudo apt install unclutter

В openSUSE:

sudo zypper install unclutter

Установите unclutter-xfixes

Unclutter очень старый и давно не обновлялся. Если вы не хотите его использовать, попробуйте его форк Unclutter-xfixes.

Unclutter-xfixes — это переписанная версия оригинальной утилиты Unclutter. В отличие от своего предшественника, он не использует поддельные окна или захват указателя и, следовательно, вызывает меньше проблем с оконными менеджерами и/или приложениями.

Чтобы установить unclutter-xfixes в Arch Linux и Manjaro Linux, просто запустите:

sudo pacman -S unclutter

В Fedora вы можете установить unclutter-xfixes через репозиторий copr:

sudo dnf copr enable nbeernink/unclutter-xfixes
sudo dnf install unclutter-xfixes

unclutter-xfixes также доступен в AUR, поэтому его можно установить с помощью любой вспомогательной программы AUR, например Yay.

yay -S unclutter-xfixes-git

Во FreeBSD:

pkg install unclutter-xfixes

В других дистрибутивах Linux вы можете скомпилировать и установить его из исходного кода. Убедитесь, что вы установили инструменты разработки в свой компьютер Linux.

Чтобы установить Unclutterpxfixes из исходного кода, выполните одну за другой следующие команды:

git clone https://github.com/Airblader/unclutter-xfixes
cd unclutter-xfixes
make
sudo make install

Автоматическое скрытие указателя мыши с помощью Unclutter

Чтобы автоматически скрыть указатель мыши или курсор через определенный интервал времени, например 10 секунд, выполните:

unclutter -idle 10

Или вы можете запустить его в фоновом режиме, как показано ниже:

unclutter -idle 10 &

Если курсор мыши не перемещался в течение заданного времени, например 10 секунд, приложение Unclutter автоматически скроет курсор с экрана. Если вы не укажете значение таймаута, по умолчанию курсор автоматически скроется через 5 секунд.

Чтобы вернуть его обратно, просто переместите мышь или нажмите любую кнопку мыши.

Автозапуск Unclutter при перезагрузке системы

Вместо того, чтобы вручную запускать Unclutter при каждой перезагрузке, просто добавьте указанную выше команду в свой автозагрузку.

Например, я добавил следующую строку в свой файл ~/.bashrc:

unclutter &

Более подробную информацию можно найти на страницах руководства.

man unclutter

Ресурс:

  • Репозиторий Unclutter-xfixes на GitHub

Избранное изображение Ливиу К. на Unsplash.

Статьи по данной тематике