Как эмулировать нажатие кнопки «Закрыть» из сценария?

Я хотел, чтобы Thunderbird остался в фоновом режиме, чтобы уведомить меня о входящих письмах.

После небольшого поиска я нашел этот пост. Как сохранить Thunderbird и Pidgin на фоне?

Решение состоит в том, чтобы установить аддон, чтобы при закрытии Thunderbird он просто оставался в фоновом режиме.

Теперь, чтобы запустить thunderbird при запуске мы можем просто добавить его в Startup Applications.

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

Решение, данное в Как сохранить Thunderbird и Pidgin на фоновом режиме? для этой проблемы - выбрать Minimize on start. Но это влияет на способ работы Thunderbird при вызове из меню «Сообщения». Поэтому я не выбрал этот вариант.

Но если есть способ эмулировать нажатие кнопки «Закрыть» из сценария, я могу просто добавить этот скрипт к Startup Applications

путь для достижения этого?

Thunderbird Если есть более простой способ решить мою оригинальную проблему хранения Thunderbird в фоновом режиме, сообщите об этом также.

Многие спасибо.

1
задан 13 April 2017 в 15:23

1 ответ

В случае отсутствия опции командной строки Thunderbird, которую вы могли бы использовать для ее сверления или в фоновом режиме, наилучшим вариантом является, вероятно, использовать что-то вроде xdotool, которое находится в репозиториях. (См. Мою более позднюю заметку о том, как свернуть до лотка).

Это команда, необходимая для минимизации экземпляра Thunderbird; xdotool выполняет поиск окна Thunderbird в стеке окон и затем сводит к минимуму его

xdotool search --class thunderbird windowminimize %@

Разверните Thunderbird, а затем попробуйте в терминале; это, кажется, команда, которую вы ищете. Часто при использовании в скриптах добавляется аргумент --sync, как указано на странице руководства:

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

Возможно, вам придется немного отложить команду до тех пор, пока Thunderbird не начнет работу, и в xdotool будет создана команда sleep, поэтому вы можете использовать

xdotool sleep 6 search --class thunderbird windowminimize %@

и установите интервал ожидания на любое требуемое значение.

Это минимизирует Thunderbird, но не на фоне, например, когда вы используете аддон возможного отсутствия , когда вы настраиваете аддон, так что нажатие на выход посылает Thunderbird в лоток. Предполагая, что аддон установлен, можно использовать xdotool, чтобы эмулировать щелчок мышью x в окне Thunderbird и, таким образом, создать его. Однако использование windowkill вместо windowminimize с Thunderbird (при установке аддонов для лотка) закрывает все приложение.

После обсуждения было сказано, что [ f17] был необходим, чтобы фактически скрыть окно; это намного проще, чем пытаться подражать клику по окну thunderbird.

xdotool sleep 6 search --class thunderbird windowunmap %@
2
ответ дан 25 May 2018 в 03:26
  • 1
    +1, Это такой замечательный инструмент. Надеюсь, мне удастся найти способ использовать этот инструмент для эмуляции близкого щелчка. Попробуй и вернись – Hashken 12 December 2012 в 22:58
  • 2
    @ Karthik Да, это отличный инструмент - я посмотрю, смогу ли я сделать это и для вас - это должно быть возможно. – user 12 December 2012 в 23:01
  • 3
    Опция windowunmap сделала трюк. Команда будет как xdotool sleep 6 search --class thunderbird windowunmap %@ – Hashken 12 December 2012 в 23:09
  • 4
    Не могли бы вы обновить свой ответ с информацией в моем предыдущем комментарии. – Hashken 12 December 2012 в 23:18
  • 5
    @ Karthik Да, я сделал редактирование, и я также увижу, можно ли это сделать, смоделируя щелчок мышью. Благодарю. – user 12 December 2012 в 23:43

Другие вопросы по тегам:

Похожие вопросы: