Registered Member
|
I'm having some issues with notifications. I've got an application that updates DBUS notifications. At the start of a session notification updates work just fine. At some point in the session new notifications stop behaving as expected, the new notification remain visible, but it does not update. Furthermore, if I setup a callback for notification-close, the ID passed by the close event is different than ID returned when the notification was raised. Here is a typical sequence I see when debugging my application:
In the above sequence I see the notification raised, I don't see any of the updates, and when I close the notification, I get passed a different notification ID for the close. Once the error begins to happen even a simple tests, such as the following, fail to update a notification:
Just in case it was something to do with Python3 dbus, I also tried a test shell script:
The script normally works fine, but after the notification system has gone off the rails, the updates do not show up. Interestingly when the notification system is misbehaving, I can get the above shell script to work by supplying a non-zero invented notification ID as its first argument, for example, in the following case I pass 1234
This works, but is kind of tacky, it depends on my guessing an unused ID, and the systemd-journal logs org.kde.plasma.notifications: Trying to replace notification with id 1234 which doesn't exist, creating a new one. This is an application bug!. I would raise a bug, but I cannot determine how to force the notifications system into this error state. I thought it was more likely to trigger if notifications had updates and actions, but I'm not sure. Once it is in this state only a reboot/logout will fix it. Testing would be easier if the notifications sub-system could be successfully reset/restarted without logging out. Is that possible? Any suggestions for narrowing this down would be appreciated. (The actual python/Qt application I'm working on is at https://github.com/digitaltrails/procno.) |
Registered users: Bing [Bot], Google [Bot], Sogou [Bot]