2010-01-19 6 views
2

J'ai écrit un small app et j'utilise pynotify pour montrer quelques messages à l'utilisateur.Comportement bizarre de pynotify dans Ubuntu 9.10

Tout fonctionne très bien ici, mais quand je l'ai testé sous Ubuntu, le comportement était très bizarre. En raison de la façon dont Ubuntu affiche les notifications (comme ce qui semble être une ruée de grognement), je ne peux pas cliquer dessus, ou interagir avec eux d'aucune façon, d'ailleurs. Le plus gros problème, cependant, est qu'il ne montre qu'une notification à la fois, et doit attendre (un long temps, par défaut) jusqu'à ce que l'un d'eux disparaisse pour afficher le suivant. Compte tenu de la nature de la petite application que j'écris (un simple moniteur qui exécute une commande chaque fois qu'un fichier est modifié), les résultats doivent apparaître à l'utilisateur en temps réel.

J'ai essayé de définir un petit délai d'attente avec message.set_timeout(), mais Ubuntu semble juste l'ignorer.

-

Alors, voici ma question: Suis-je le seul à remarquer que? Est-ce que je fais quelque chose de mal? Sinon, y a-t-il un moyen de changer ce comportement dans Ubuntu? Une solution de contournement?

Merci à l'avance pour votre temps

Répondre

3

Oui, Ubuntu 9.10 remplacé en amont notification-daemon les environs avec leur propre notify-osd, et généralement fait un tas de choses.

Vous pouvez vous assurer notification-daemon est installé (via quel que soit votre front-end de gestionnaire de paquets préféré est) et l'utiliser en faveur de 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 

Malheureusement, ce sera écrasés chaque fois que le paquet est mis à jour ... il utilise déjà un dpkg-diversion donc il est difficile de le rediriger de façon permanente.

+0

Le seul problème avec ceci est que quand je distribue l'application je ne serai pas capable de contrôler l'environnement. Merci pour votre réponse, cependant. Vous avez indiqué dans une bonne direction. –

+0

La solution donnée désactive réellement la notification libnotify qui n'est pas ce que je veux. Est-ce que je peux résoudre ce bug? –

+0

@shadyabhi Cette solution, idéalement, remplace le notificateur développé par Ubuntu avec l'ancien notificateur en amont, mais c'est un peu un hack. La meilleure solution que j'ai trouvée: arrêtez d'utiliser Ubuntu, et passez à une distribution qui ne s'occupe pas de patcher des paquets en amont avec des expériences d'interface utilisateur. – ephemient