Слияние с notify-osd

Я написал программу, которая использует Notify-OSD, но иногда сообщения из моего приложения будут помещаться в очередь. Я читал о слиянии Notify-OSD Однако он не делает это автоматически - как я могу заставить мое приложение объединять уведомления, чтобы они не передавались по одному за раз?

2 ответа

Решение

Вы можете объединить связанные уведомления пузырьков, установив строку подсказки x-canonical-append в true,

from gi.repository import Notify
Notify.init('test')

n = Notify.Notification.new('Summary', 'Line 1', 'dialog-information')
n.set_hint_string('x-canonical-append', 'true')
n.show()

n = Notify.Notification.new('Summary', 'Line 2', 'dialog-information')
n.set_hint_string('x-canonical-append', 'true')
n.show()

Для более подробной информации смотрите append-hint-python.py пример на python по адресу http://bazaar.launchpad.net/~indicator-applet-developers/notify-osd/trunk/view/head:/examples/append-hint-example.py

Источник: http://developer.ubuntu.com/resources/technologies/notification/

Если вы разрабатываете в Python, используйте метод обновления объекта уведомления, тогда метод show:

notification = pynotify.Notification("title", "body", "icon")
notification.show()
#later
notification.update("title2", "body2", "icon2")
notification.show()

Если вы разрабатываете в C, есть функция notify_notification_update(), которая делает то же самое. Другие языки будут похожи, но названия могут немного отличаться.

Другие вопросы по тегам