Оболочка Gnome: при запуске переместить окна на передний план (больше никаких уведомлений «… готово к использованию»)

22

Я использую Gnome Shell с Ubuntu уже несколько дней и испытываю действительно раздражающее поведение с новыми окнами.

Иногда, когда я использую другое окно и нажимаю, например, Alt+ Ctrl+, Tчтобы открыть новое окно терминала, новое окно не выводится вперед. Вместо этого я получаю уведомление «Новое окно терминала готово к использованию».

Аналогичная проблема возникает при интеграции Pidgin с Gnome Shell (через расширение). Когда я получаю новое сообщение, всплывает уведомление, но окно не отображается. Мне нужно либо Alt+ Tabэто, либо щелкнуть уведомление, чтобы увидеть новое сообщение.

Есть ли способ, чтобы новые окна всегда выводились на передний план, и убирали эти надоедливые уведомления «Окно готово»?

РЕДАКТИРОВАТЬ: gconftool-2 --search-key focus_new_windows (по требованию Северина):

 /schemas/apps/metacity/general/focus_new_windows = Schema (type: `string' list_type: '*invalid*' car_type: '*invalid*' cdr_type: '*invalid*' locale: `C')
 /apps/metacity/general/focus_new_windows = smart
grafthez
источник
3
Есть веская причина, по которой Gnome показывает, что уведомление «Окно готово» открывается при открытии нового окна без автоматической фокусировки. Это важная особенность доступности. Для слепых и других слабовидящих пользователей, таких как я, важно получать уведомление, если окно без фокуса открыто, потому что иначе было бы невозможно узнать, действительно ли окно не было открыто или нет. Если новое окно не получает фокус автоматически, пользователь должен быть уведомлен, чтобы пользователи знали, что окно открыто. Программа чтения с экрана, как Orca, говорит эти уведомления.
миксух
В Debian v3.16, Gnome 3 , я нашел это focus_new_windows установки в org.gnome.desktop.wm.preferences
Пьер де LESPINAY
если новое окно фокусируется автоматически (особенно с помощью оболочки), когда я набираю текст, я очень злюсь… и думаю о возможных последствиях для безопасности
törzsmókus

Ответы:

12

Вы можете попробовать установить focus_new_windows от умного до строгого. Вы можете использовать gconf-editor и перейти в / apps / metacity / general и изменить значение focus_new_windows с smart на строгое, как здесь:введите описание изображения здесь

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

gconftool-2 --set /apps/metacity/general/focus_new_windows --type string strict

Если это по-прежнему не помогает, вы также можете изменить auto_raise_delay с 1000 на 0 в вышеупомянутом gconf-редакторе (см. Скриншот).

Смотрите также здесь .

Мартин
источник
2
Но длинное описание, приведенное для ключа focus_new_windows, гласит: «Этот параметр обеспечивает дополнительный контроль над тем, как вновь созданные окна получают фокус. Он имеет два возможных значения:« smart »применяет режим обычной фокусировки пользователя и« строгие »результаты в окнах, запускаемых из терминала не уделяется внимание ". Но мы хотим обратного. Не так ли? Мы хотим сфокусироваться на недавно запущенных приложениях. Как это сделать?
Мак
2
Запуск этой командной строки не имел для меня никакого эффекта
Робин Уинслоу
1
Также не имел никакого эффекта для меня (я установил и строгое, и auto_raise_delay в 0).
Якуб Котовски,
11

Есть расширение для Gnome3

«укради мое внимание»

https://extensions.gnome.org/extension/234/steal-my-focus/

это решает точную проблему, с которой вы столкнулись.

Швайнштайгер
источник
не работает для меня Я заметил, что у меня эта проблема только на моем внешнем мониторе. На дисплее ноутбука появляется окно.
Якуб Котовски,
Отличное продолжение!
ч.т.д.
Это сработало для меня, Gnome 3.14.
Расмус
1
Не работает в GNOME 3.22.2 (Fedora 25)
l0b0
1
extensions.gnome.org/extension/1236/noannoyance - более актуальный вариант.
Икра
3
  1. Перейдите в Система > Предпочтения > Диспетчер настроек CompizConfig > Общие параметры (в разделе Общие )> Поведение фокусировки и повышения ,
  2. Очистить поле для предотвращения фокуса Windows .

Ссылки: Compiz Общие Опции , Compiz Window Matching .

k0pernikus
источник
2

Я не думаю, что есть настройка для этого. Я уже некоторое время использую оболочку gnome. Вы можете установить «расширение расширенных настроек» для GNOME 3, которое предоставляет вам еще несколько настроек. Тем не менее, вы не можете получить функцию, которую вы ищете. Я буду искать в сети и вернусь к вам.

Ханнес
источник
Нет, насколько я понимаю, нет способа сделать автофокусировку в новом окне и нет способа удалить уведомления.
Ханнес
есть расширение для gnome, которое делает то, о чем вы говорите, невозможно. Посмотрите на мой ответ :)
Schweinsteiger
2

Теперь это можно сделать в Tweak Tool, который включен в Gnome Shell. Вам больше не нужно использовать расширения или dconf-editor.

В разделе «Windows» переместите переключатель для «Автоматически поднимать Windows».

Этот параметр сделает окна всплывающими в фокусе, а также избавит от уведомления «приложение готово».

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

РЕДАКТИРОВАТЬ: эта опция отсутствует в Ubuntu 17.10 и, надеюсь, вернется в 18.04. В качестве временного исправления вы можете попробовать установить следующие расширения GNOME;

  • Noannoyance
  • Фокус мое окно
  • Украсть мое внимание

Вышеуказанное расширение доступно здесь: https://extensions.gnome.org/

Дориан
источник
1
Этот параметр отсутствует в gnome-tweak-tool в Ubuntu 17.10
Крис Биллингтон,
@ChrisBillington Правильно. Причина удаления не ясна. Тем не менее, вы можете получить их обратно, установив расширения Gnome "NoAnnoyance" и "Focus my window". Надеюсь, они вернут его в 18.04. Я обычно придерживаюсь только релизов LTS ... Также, как упомянуто ниже, расширение "Steal my focus" может работать для вас.
Дориан
0

Вы можете изменить этот тип материала с devilspieпомощью приятного интерфейса с графическим интерфейсом gdevilspie, который есть в репозиториях.

user72421
источник
0

Создайте пользовательский ярлык в настройках клавиатуры и используйте команду:
xterm -e <имя терминала>
или:
uxterm -e <имя терминала>

Также, если у вас возникают проблемы с «не удалось выполнить сеанс», вы всегда можете пойти дальше.

<имя терминала> -e xterm -e <имя терминала>

В моем случае:
xfce4-терминал -e xterm -e xfce4-терминал

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

Чистый и не нужно устанавливать расширения.

user634715
источник
0

Хорошо, у меня была эта проблема в течение многих месяцев. Пройдя все ответы, я не нашел ничего удовлетворительного, кроме хороших указателей. И вот полный ответ, который решил мою проблему для Ubuntu 18.04: https://linuxconfig.org/how-to-install-gnome-shell-extensions-on-ubuntu-18-04-bionic-beaver-linux .

Шаг 1

Установите Firefox Addon, который упрощает установку расширений GNOME Shell: https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/ .

Шаг 2

Установите хост-соединитель, который поддерживает аддон:

sudo apt install chrome-gnome-shell

Шаг 3

Установите это расширение оболочки GNOME: https://extensions.gnome.org/extension/1236/noannoyance/ . Вы можете установить его с веб-страницы, благодаря расширению Firefox.

user1350992
источник