Client does not always receive menuitem property changes

Bug #755581 reported by Panagiotis Skintzos
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
DBus Menu
Expired
Undecided
Unassigned

Bug Description

I'm building the new weather indicator version with dbusmenu and libindicator.
I've noticed that when I change a Dbusmenu.Menuitem property (either custom like "x-foo" or Dbusmenu defined like "visible" or "label") on the server, the client does not always receive the change. There is not an exact pattern in this behavior but it seems to have something to do with the thread that performs the change.
When the property changes from a "activated" signal handler (user clicked in an item on the menu), the client always receives the change. Also before the menu is shown, the client receives property changes.
But when the change comes from a different thread of the server or from a glib.add_timeout callback, the client receives it only sometimes.
I've tried with different property names, different threads it's always like this. And it happens only in Natty; in Maverick there was never a problem.
For the moment, as a workaround I use a custom dbus interface and signal the property changes through that (this method never fails, no matter the thread I'm using). But I have to create custom gtk menuitems (that receive property changes through my dbus interface) for every generic menuitem and even for separators, because even them do not respond to "visible" property change.

I'm not sure how to debug this, so please advice me.

Revision history for this message
Olli Ries (ories) wrote :

thank you for your report - please reopen if this issue still exists in 12.04

Changed in dbusmenu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for DBus Menu because there has been no activity for 60 days.]

Changed in dbusmenu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.