2010-01-19 4 views
2

Я написал small app, и я использую pynotify, чтобы показать некоторые сообщения пользователю.Weird pynotify поведение в Ubuntu 9.10

Все это прекрасно работает здесь, в арке, но когда я протестировал его в Ubuntu, поведение было очень странным.

Из-за того, что Ubuntu показывает уведомления (как то, что кажется разрывом рычания), я не могу нажимать на них или взаимодействовать с ними каким-либо образом.

Самая большая проблема, однако, состоит в том, что она отображает только одно уведомление за раз, и ему приходится ждать () времени, по умолчанию), пока один из них не уйдет, чтобы показать следующий.

Учитывая характер маленького приложения, которое я пишу (простой монитор, который запускает команду при каждом изменении файла), результаты должны отображаться пользователю в режиме реального времени.

Я попытался установить небольшой тайм-аут с message.set_timeout(), но Ubuntu просто игнорирует его.

-

Итак, вот мой вопрос: Я единственный, кто заметил, что? Я делаю что-то неправильно?

Если нет, есть ли способ изменить это поведение в Ubuntu? Любое обходное решение?

Заранее спасибо за ваше время

ответ

3

Да, Ubuntu 9.10 заменен выше это notification-daemon с их собственным notify-osd, и вообще сделал беспорядок вещей.

Вы можете убедиться, установлен уведомительный демон (через любой ваш любимый менеджер пакетов передний конец) и использовать его в пользу уведомляют-ЭКРАН:

 
$ sudo mv /usr/share/dbus-1/services/org.freedesktop.Notifications.service /usr/share/dbus-1/services/org.freedesktop.Notifications.service.disabled 
$ sudo mv /usr/share/dbus-1/services/org.freedesktop.Notifications.service.notify-osd /usr/share/dbus-1/services/org.freedesktop.Notifications.service 

К сожалению, это будет перезаписан каждый раз, когда пакет обновлено ... он уже использует dpkg-distion, поэтому трудно повторно перенаправить его навсегда.

+0

Единственная проблема заключается в том, что при распространении приложения я не смогу контролировать среду. Спасибо за ваш ответ. Вы указали в хорошем направлении. –

+0

Данное решение фактически отключает уведомление libnotify, которое не то, что я хочу. Есть ли способ решить эту ошибку? –

+0

@shadyabhi Это решение, в идеале, заменяет исходный уведомитель Ubuntu на старшего уведомителя, но это взломать. Лучшее решение, которое я нашел: прекратите использование Ubuntu и переключитесь на дистрибутив, который не работает вокруг исправления пакетов с потоковыми пакетами с экспериментами пользовательского интерфейса. – ephemient

Смежные вопросы