Как сердцебиение X11 заставки? - PullRequest
2 голосов
/ 21 февраля 2012

X11 имеет механизм заставки, которым можно управлять с помощью команды xset. Без необходимости вызывать внешнюю команду, чтобы отключить или пульсировать заставку, из моего приложения X11, как я могу пульсировать механизм заставки, чтобы предотвратить его отключение монитора?

Ответы [ 2 ]

3 голосов
/ 21 февраля 2012

Если это в современной системе Linux, предпочтительный метод FreeDesktop - это пинг интерфейса DBus, в частности org.freedesktop.ScreenSaver.SimulateUserActivity() или другой части открытого интерфейса, в зависимости от ваших потребностей.

0 голосов
/ 21 февраля 2012

А также решение D-Bus, предложенное @Kitsune. Вы также можете использовать подход, используемый некоторыми медиапроигрывателями, и имитировать нажатие клавиши (например, Alt) через равные промежутки времени.

Этот код в тотеме: http://git.gnome.org/browse/totem/tree/lib/totem-scrsaver.c предназначен для добавления в вашу кодовую базу (это LGPL v2.1) и будет использовать как интерфейс D-Bus, так и XTest для синтеза нажатия Alt. ключ каждые 30 секунд.

...