Как настроить фокус так, чтобы он следовал за мышью?

Как настроить фокус так, чтобы он следовал за мышью?

Есть ли способ настроить поведение «фокус следует за мышью» в Unity?

решение1

13.04 и более поздние версии (GUI) (также работает в Ubuntu Unity 22.10)

Настройки последующей фокусировки можно задать с помощьюинструмент-настройки-единстваУстановить unity-tweak-tool

введите описание изображения здесь

введите описание изображения здесь

12.10 и более поздние версии (командная строка)

Следующие элементы управления следят за фокусом

gsettings set org.gnome.desktop.wm.preferences focus-mode 'sloppy'

или

gsettings set org.gnome.desktop.wm.preferences focus-mode 'mouse'

Используйте значение 'click'для сброса к стандартному управлению фокусировкой.

Примечание:разница между 'sloppy'и 'mouse'описана в конце этого ответа.

Кроме того, у вас есть следующая опция, которая при установке автоматически поднимает окно, чтобы получить фокус:

gsettings set org.gnome.desktop.wm.preferences auto-raise true

Вы можете контролировать задержку для этой возможности автоматического повышения (в миллисекундах):

gsettings set org.gnome.desktop.wm.preferences auto-raise-delay 500

Вы можете изменить raise-on-click, чтобы контролировать, какое окно будет сверху:

gsettings set org.gnome.desktop.wm.preferences raise-on-click false

12.04

Ниже представлены два метода для 12.04:

метод 1

введите описание изображения здесь

Используйте gconf-editorи измените показанное значение режима фокусировкимышьилинебрежный

(см. примечание ниже)

Если у вас еще нет gconf-editorустановленного ПО, вы можете установить его с помощью команды терминала:

sudo apt-get install gconf-editor

Кроме того, у вас есть следующая клавиша, которая при установке автоматически поднимает окно, чтобы получить фокус - auto-raise.

Вы можете контролировать задержку для этой возможности автоматического повышения (в миллисекундах), изменяя значение ключа.auto-raise-delay

метод 2

использоватьgnome-tweak-tool

введите описание изображения здесь

изменятьрежим фокусировки оконкмышьилинебрежный

(см. примечание ниже)

«мышь» против «небрежного»

Режим фокусировки «небрежный» работает лучше, позволяя Alt+ TABпереопределять фокус.

«мышь» означает, что если мышь не находится в окне, то окно не выбрано, независимо от того, что вы выбрали каким-либо другим способом.

Режим фокусировки окна указывает, как активируются окна. Он имеет три возможных значения: «щелчок» означает, что для фокусировки окна необходимо щелкнуть по нему, «небрежный» означает, что окна фокусируются, когда мышь попадает в окно, и «мышь» означает, что окна фокусируются, когда мышь попадает в окно, и не фокусируются, когда мышь покидает окно.

Управление тем, какое окно находится сверху

Следующие параметры окна управляют тем, какое окно находится впереди других (или «сверху»). Это немного отличается от того, какое окно имеет фокус ввода. Следующие описания помогают немного объяснить.

поднять по щелчку

Некоторые пользователи, использующие focus-follows-mouse, не любят, чтобы окна, с которыми они взаимодействуют, оказывались наверху, если только они явно не нажимают на панель плиток окна. Это дает более тонкое зерно контроля при работе с несколькими окнами, но может раздражать большинство пользователей.

авто-рейз

Некоторые пользователи, использующие focus-follows-mouse, хотят, чтобы окно, над которым находится курсор, автоматически поднималось наверх. Это делает окно полностью видимым, и никакие другие окна его не затмевают.

авто-поднятие-задержка

Продолжительность времени ожидания перед срабатыванием функции автоматического повышения ставки.

решение2

Это можно сделать через CompizConfig Settings Manager. Я тестировал это на 11.10, 12.04 и 12.10, иСтарейшина Гикуспешно протестировано 14.04. и 16.04.

CompizConfig

Выберите вкладку «Поведение фокусировки и подъема», затем снимите флажок «Щелкните для фокусировки». Убедитесь, что флажок «Автоматический подъем» установлен.

Подробнее о CompizConfig

Если у вас не установлен диспетчер настроек CompizConfig (также известный как «CCSM»), вы можете сделать это из Центра программного обеспечения или из командной строки:

sudo apt-get install compizconfig-settings-manager

Затем вы можете запустить его с помощью ccsmкомандной строки или из средства запуска с помощью «compiz» или «ccsm»,

Вот несколько общих предостережений по использованию ccsm:какие проблемы есть с ccsm?

решение3

Хотя вы можете использовать gconf-editor или gnome-tweak-tool, чтобы сделать это, они не установлены по умолчанию. Я также нашел (на intarwebs отhttp://blog.bodhizazen.com/linux/gnome-3-focus-follows-mouse):

gconftool-2 --type string --set /apps/metacity/general/focus_mode mouse
gconftool-2 --type boolean --set /apps/metacity/general/auto_raise true
gconftool-2 --type integer --set /apps/metacity/general/auto_raise_delay 600

Лично мне не нравится функция auto_raise, поэтому я установил второй параметр на «false» и не устанавливал параметр auto_raise_delay.

Однако следует отметить, что это в конечном итоге «ломает» Единую строку меню (UMB) (когда вы переводите курсор с используемого элемента на другой, Единая строка меню теперь отражает то, над чем вы в данный момент наводите курсор).

Два обходных пути:

  • Переместите окно в верхнюю часть экрана перед доступом к UMB
  • Нажмите F10, чтобы UMB оставался открытым в выбранном окне, с которым можно взаимодействовать.

Недавно протестировано Precise

еще правки: я заключил слово «перерывы» в кавычки — да, это не совсем таксломанный, но это нарушает ИМХОнамерениеUMB или, по крайней мере, затрудняет его использование, как правильно отмечает Риз в комментарии. На мой взгляд, это «ломает простое использование, но с раздражающим обходным путем». Хотя, учитывая фокус Linux на предоставлении очень сильной многозадачности (что, как правило, приводит к «захламленному» рабочему столу), похоже, что либо UMB снижает многозадачность, либо многозадачность снижает возможности UMB. Я оставлю это в качестве упражнения для читателя, чтобы он сам решил...

решение4

Другой способ включить focus-follows-mouse сработал у меня в недавней установке 12.10. Естьв настоящее время ошибка в 12.10(и отдельное спасибо nealmcb за ссылку), которая заставляет изменения, сделанные с помощью ccsm или gsettings, откатываться при выходе из системы или перезагрузке. Я попробовал несколько разных способов обойти ошибку, но в конечном итоге добился успеха с помощьюэтот пост об использовании Unsettings.

В случае переноса этой страницы процесс сводится к следующему:

sudo add-apt-repository ppa:diesch/testing
sudo apt-get update
sudo apt-get install unsettings

Запустите unsettings, перейдите на вкладку Windows и отключитеНажмите, чтобы сфокусироваться. Я перезагрузил его, чтобы он «принял», но, вероятно, нужно было просто выйти из системы и снова войти в нее.

На будущее: похоже, что это исправление ошибки будет доступно в ближайшее время, поэтому обычные методы CCSM или gsettings должны снова работать правильно.

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