处理Gnome中GNotifications的超时?

时间:2017-10-07 09:44:54

标签: gtk glib gio

我的程序需要对用户做出反应而不对GNotification采取任何行动。

更具体地说,只有当用户没有按下"撤消"时,才会将一条数据写入数据库。数据创建后发送的通知上的按钮。我的目标部署方案确实启用了通知并且实际超时值。

确切地说:移动通知"远离" /删除它也应算作超时。

1)是否有内置的方式来聆听'通知超时?

2)如果没有,我怎么还能实现类似的行为?

1 个答案:

答案 0 :(得分:0)

我会使用D-Bus org.freedesktop.Notifications接口。虽然它仍然是draft specification,但看起来确实稳定。我使用Vala访问D-Bus接口的经验是,它更易于使用,并提供了规范的完整功能集。 GNotification似乎并不像功能完整。

从规范草案中,您将看到expire_timeout方法存在org.freedesktop.Notifications.Notify参数。这应该适合你的超时要求,虽然我没有亲自使用它。还有一个org.freedesktop.Notifications.NotificationClosed信号,可以在通知结束时通知您的程序,包括因为超时或用户已被解雇。

post about the screen lock re-design for GNOME Shell 3.10可能会显示通知的功能。该帖子包含锁定屏幕中出现的一些通知屏幕截图。