我正在尝试使用 X11 屏幕保护程序扩展客户端库检测自上次用户输入以来的时间。我定期打电话来XScreenSaverQueryInfo
获取空闲时间。我面临的问题是,每隔 20-30 秒,此调用报告的空闲时间重置为 0。即使当时没有实际的用户输入,也会发生这种情况。我对此完全感到困惑。我唯一的线索是,如果我卸载,问题就会消失gnome-screensaver
。我的问题是,是否gnome-screensaver
出于某种原因模拟用户输入?我知道这听起来不太可能,如果确实如此,那肯定是gnome-screensaver
. 有谁知道我在哪里可以找到有关其gnome-screensaver
工作原理以及它如何影响的更多信息XScreenSaverQueryInfo
无需实际通过代码即可调用。我已经在gnome-screensaver
家里浏览了信息,但找不到与我的问题相关的任何内容。
更新:我从 dbus-monitor 得到以下输出。我如何解释这个:
method call sender=:1.97538 -> dest=org.gnome.ScreenSaver serial=3 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=SimulateUserActivity
我认为某些过程要求 gnome-screensaver 模拟用户活动。或者,gnome-screensaver 是否向 dbus 发送 SimulateUserActivity 信号?如果是第一个,我怎样才能找出哪个进程要求 gnome-screensaver 这样做?