GNOME会话管理器无法识别抑制器

时间:2014-10-03 21:47:06

标签: debian gnome

如果GNOME应用程序有未保存的数据并且用户想要关闭或注销,会话管理器会通知用户这一点(更不用说屏幕截图中的“没有响应”):

illustration

我相信这是通过dbus完成的,请参阅herethe answer here

问题

我可以使用first link中的python示例成功注册一个抑制剂 但是在注销期间没有显示禁止和“原因”。为什么呢?

使用GNOME 3.4系统是Debian 7

1 个答案:

答案 0 :(得分:0)

Inhibit()调用有一个flags-parameter。您没有显示任何代码,因此我们无法分辨您使用的是什么值,但我猜它不是正确的。

GTK +应用程序有一个很好的API,可以在gtk_application_inhibit()中使用它。

SessionManager D-Bus API未声明稳定,但如果不能使用GtkApplication,则使用(如果可用)应该没问题。这些是SessionManager API的标志值(按位OR一起):

1: Inhibit logging out
2: Inhibit user switching
4: Inhibit suspending the session or computer
8: Inhibit the session being marked as idle
16: Inhibit auto-mounting removable media for the session