Как спрятать курсор мыши
Я строю киоск с помощью Ubuntu Precise на сенсорном экране. Сейчас я ищу подходящий способ заставить курсор мыши исчезнуть. Поскольку люди знают, куда они указывают, показ стрелы под их пальцем бесполезен, а стрелка там, где они в последний раз указывали, тем более.
Моя лучшая ставка была бы темой курсора, состоящей только из прозрачных курсоров. Я немного удивлен тем, что не могу найти пользовательский интерфейс для переключения и, возможно, установить темы курсора в пользовательском интерфейсе Unity по умолчанию, но поскольку я не буду использовать Unity, это не является большой проблемой. Похоже, что альтернативы, перечисленные в update-alternatives --list x-cursor-theme
все относятся к .theme
файлы, поэтому я искал список пакетов для них. В результирующем списке не указаны возможные кандидаты, т.е. нет пакетов, содержащих в своем имени "невидимые" или "прозрачные".
До сих пор, мой лучший выбор - какой-то результат в Google , получивший readme для "XCursor Transparent Theme". Это будет означать сбор этих источников самостоятельно, возможно, включение их в мой PPA. Я также немного скептически отношусь к этому результату, так как readme датируется 2003 годом. И я не уверен, что не усложняю ситуацию. В конце концов, в Precise есть некоторая поддержка сенсорных устройств, поэтому я не верю, что я первый, кто хочет избавиться от курсора мыши.
- Есть ли другой способ, который не использует скомпилированный пользователем двоичный код?
- Есть ли пакет тем для прозрачных курсоров, который я пропустил?
- Есть ли какой-то другой механизм, чтобы курсор исчезал без изменения темы курсора?
Я буду использовать апплеты Matchbox WM, Firefox и Java, поэтому я буду рад любому решению, работающему в такой конфигурации. Меня не интересуют какие-либо решения, связанные с Gnome или Compiz, так как я тоже не буду работать.
7 ответов
Попробуйте 'unclutter'
Цель этой программы - скрыть указатель, если мышь некоторое время не двигалась. Используя его, вы можете заставить указатель появляться только тогда, когда пользователь касается экрана, и исчезать сразу после него. (возможно, это было не совсем то, к чему вы стремились. Но это намного проще, чем ваша альтернатива =P)
Чтобы использовать, установите его
sudo apt-get install unclutter
затем запустите
unclutter -idle 0.01 -root
число - это количество секунд до исчезновения указателя (в данном случае 1/100 секунды)
Если вы не хотите, чтобы курсор появлялся (подходит для сенсорных экранов), моего опыта будет недостаточно. Вместо этого вы можете использовать использование -nocursor
при запуске X.
Пример:
startx -nocursor
Если вы используете lightdm:
редактировать /etc/lightdm/lightdm.conf
добавляя:
xserver-command=X -bs -core -nocursor
если вы используете nodm:
редактировать /etc/default/nodm
заменив:
NODM_X_OPTIONS='-nolisten tcp'
с
NODM_X_OPTIONS='-nolisten tcp -nocursor'
Это здание от Гиббса очень полезный ответ
Ubuntu 16.04
открыто /usr/share/lightdm/lightdm.conf.d/50-xserver-command.conf
и отредактируйте эту строку:
xserver-command=X -core
присоединять -nocursor
к этому. Как это:
xserver-command=X -core -nocursor
Сохраните и перезапустите.
Предупреждение: Как и другие ответы на этот вопрос, ошибки в этом файле будут препятствовать инициализации Xorg. В любом случае, вы все равно можете войти в терминал и вернуться.
В новой версии Unclutter для x11 есть несколько опций: скрыть заметки и скрыть при касании https://github.com/Airblader/unclutter-xfixes/blob/master/src/unclutter.c
Изменить unclutter.c
Конфигурация config = {.timeout = 0, // по умолчанию 5 .jitter = 0, .exclude_root = false, .ignore_scrolling = false, .ignore_buttons.count = 0,.ignore_buttons.buttons = NULL,.hide_on_touch = true, // по умолчанию false .fork = false, .debug = false, .onescreen = false, .ignore_matches = false,.matches = NULL,.start_hidden = true // по умолчанию false };
Другой вариант, который я нашел, — это использовать xbanish.
- Клонируйте репозиторий в выбранный вами каталог
git clone https://github.com/jcs/xbanish
- (необязательно) Я должен был убедиться, что
libxt-dev
был установлен с
sudo apt install libxt-dev
- Убедившись, что вы находитесь в
xbanish
каталог, создайте файл, просто запустив
make
- Теперь вы можете бежать с
./xbanish
Обратите внимание, что это решение будет работать только в том случае, если у вас запущена программа, поэтому вы также можете настроить ее запуск при запуске.
Другой вариант — установить тему курсора в Ubuntu на невидимую тему. Для этого я создал один. Вы можете найти его здесь https://github.com/gysi/ubuntu-invis-cursor-theme