我想知道用户最后一键或移动鼠标已经有多久了 – 不仅仅是在我的应用程序中,而是在整个“计算机”(即显示)上,为了猜测它们是否仍然在计算机,并能够观察在屏幕上弹出的通知.
我想纯粹从(Py)GTK这样做,但我可以调用平台特定的功能.理想情况下,我想调用已经从Python中包装的函数,但是如果不可能的话,只要我知道我正在寻找什么,我不会超过一些C或Ctypes代码.
在Windows上,我想我想要的功能是GetLastInputInfo
,但是似乎没有被pywin32包装;我希望我错过了一些东西.
Gajim在Windows,OS X和GNU / Linux(和其他* nixes)上这样做:
> Python wrapper module(还包括Windows空闲时间检测代码,使用GetTickCount与ctypes);
> Ctypes-based module to get X11 idle time(使用XScreenSaverQueryInfo,是旧的Gajim版本的C模块);
> C module to get OS X idle time(使用HIDIdleTime系统属性).
这些链接的日期为0.12版本,因此您可能需要检查当前来源,以进一步改进和更改.