【发布时间】:2014-01-31 17:49:37
【问题描述】:
我想在屏幕保护程序(可能是 xscreensaver)启动或停止时收到通知。 gtk、glib、gio 或其他库是否有任何解决方案可以在 linux 下为我做到这一点?
【问题讨论】:
-
可能读到 EWMH 然后在根 X11 窗口上跟踪一些属性
-
应该是专门启动屏保吧?为什么不简单地检查您的窗口何时失去焦点并且很长时间没有重新获得焦点?
我想在屏幕保护程序(可能是 xscreensaver)启动或停止时收到通知。 gtk、glib、gio 或其他库是否有任何解决方案可以在 linux 下为我做到这一点?
【问题讨论】:
看一下org.freedesktop.ScreenSaver D-Bus 接口中的 ActiveChanged 信号。至少当前的 GNOME 和 KDE 都支持它(如果您想支持较旧的 GNOME 版本,您可能还需要关注org.gnome.ScreenSaver)。
不幸的是,该规范似乎已经消失了——或者它曾经以电子邮件的形式出现。用 d-feet 或其他东西看看实际可用的 API(它不是太复杂)。
【讨论】: