Предотвратить xautolock/i3lock при просмотре видео

Я использую оконный менеджер i3 и имею

set $Locker i3lock --color=000000 && sleep 1
exec --no-startup-id xautolock -time 5 -locker "$Locker"

в его конфигурационном файле, чтобы он блокировался через 5 минут.

Проблема в том, что 5-минутный таймер отсчитывает время, даже когда я смотрю видео, что мне определенно не нравится. (Кстати, я обычно смотрю фильмы с mplayer, но иногда я также использую потоковые сайты, используя qutebrowser.) Наоборот, я хотел бы предотвратить xautolockДействие в таких ситуациях.

Одним из возможных решений, о котором я думал, является изменение второй строки на

exec --no-startup-id myscript -time 5 -locker "$Locker"

где myscript скрипт bash/ любой другой, передающий все параметры xautolock только если я не смотрю видео. Но я не знаю, что проверить с этим гипотетическим сценарием.

0 ответов

Один из возможных способов сделать это без необходимости реализовывать все параметры xautolock в myscript было бы написать свой $Lockerкак сценарий или программу, чтобы определить, выполняются ли условия для предотвращения блокировки. В противном случае вызовите программу блокировки экрана:

xautolock -locker should_screen_lock.sh
                                   |
                   Yes <- fullscreen YouTube? -> No
                    |                            |
                  Abort                         Lock

Вы можете использовать xprop -root узнать идентификатор активного окна в оконном менеджере и xprop -id по этому идентификатору, чтобы увидеть, работает ли он в полноэкранном режиме.

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

Вот моя попытка сделать именно это. Следует отметить, что я не бегаюxautolockиз конфигурации i3: это пользовательская служба systemd. Шкафчик (lock_screen.sh), однако, привязан к клавиатуре, чтобы я мог обойти xautolock, если у меня что-то отображается в полноэкранном режиме.

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