Скрытие мыши после нескольких секунд простоя на дисплее X
У меня есть приложение киоска, работающее на Ubuntu Server 14.04.3 с Google Chrome и дисплеем X (xorg и xsession).
В настоящее время у меня есть сценарий, чтобы скрыть мышь после 2 секунд простоя, и когда пользователь пытается переместить мышь, он появляется. Я просто использую cursor:none
на вставленное невидимое наложение и удалите это наложение при необходимости.
Кажется, что когда я загружаю киоск, код выполняется должным образом, и я вижу вставленный оверлей, но поскольку мышь была просто "загружена", она не исчезнет, пока я не сделаю даже небольшое движение с ней. Похоже, что браузер не обнаруживает мышь, пока я не сделаю с ней даже небольшое движение, в результате чего мышь будет отображаться в середине экрана. Так как проблема не связана с моим кодом, так как кажется, что он выполняется нормально.
Что я хочу сделать, так это то, что если мышь не двигали в течение 2 секунд, скройте ее. Когда пользователь пытается переместить мышь, покажите ее еще раз. Решение должно работать сразу после загрузки дисплея X, поэтому при загрузке дисплея X мышь находится в середине экрана, и даже если я не трогаю ее при загрузке, она исчезнет через 2 секунды простоя. Я думаю, что мне нужно добиться этого, повозившись с дисплеем X вместо того, чтобы полагаться на мой код, поскольку мышь не обнаруживается при новой загрузке киоска.
Возможно ли сделать такое с X display?
1 ответ
Существует приложение под названием unclutter
это сделает это. Установите его, введя следующее в окне терминала:
sudo apt-get install unclutter
после его установки вы можете изменить время ожидания до 2 секунд в следующем файле:
/etc/default/unclutter
и измените следующую строку:
EXTRA_OPTS="-idle 1 -root"
в
EXTRA_OPTS="-idle 2 -root"
это также автоматически запускается при загрузке системы.
Чтобы запустить его без перезагрузки системы, введите следующее:
nohup unclutter -idle 2 &
РЕДАКТИРОВАТЬ:
Если он не найден для установки, отредактируйте /etc/apt/sources.list
файл и убедитесь, что следующие строки не закомментированы #
из:
deb http://us.archive.ubuntu.com/ubuntu/ trusty universe
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty universe
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates universe
Если они закомментированы, удалите #
на передней линии, затем бегите sudo apt-get update
чтобы обновить репозитории, затем снова запустите sudo apt-get install unclutter
,
Если я выполню следующие команды, мы увидим, что unclutter
приложение исходит от trusty universe
Хранилища.
:~$ apt-cache showpkg unclutter
Package: unclutter
Versions:
8-19 (/var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_trusty_universe_binary-amd64_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_trusty_universe_binary-amd64_Packages
MD5: f0e9ff67c42a9d3dc35bb595d2f84a7b
Description Language: en
File: /var/lib/apt/lists/us.archive.ubuntu.com_ubuntu_dists_trusty_universe_i18n_Translation-en
MD5: f0e9ff67c42a9d3dc35bb595d2f84a7b
:~$ dpkg -s unclutter
Package: unclutter
Status: install ok installed
Priority: optional
Section: x11
Installed-Size: 76
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: amd64
Version: 8-19
Depends: debconf (>= 0.5) | debconf-2.0, libc6 (>= 2.3.4), libx11-6
Conffiles:
/etc/X11/Xsession.d/90unclutter 9b47a483264cfc6a155fbd65cd8a3e6e
Description: hides the mouse cursor in X after a period of inactivity
unclutter hides your X mouse cursor when you don't need it, to prevent it
from getting in the way. You have only to move the mouse to restore the
mouse cursor.
Original-Maintainer: Axel Beckert <abe@debian.org>
Homepage: ftp://ftp.x.org/contrib/utilities/
Надеюсь это поможет!