GNOME Bugzilla – Bug 71155
some applets do not have generic menu items
Last modified: 2015-03-24 13:00:31 UTC
Some applets do not get "Remove From Panel" and "Move" menu items. Every panel object should have them. Strangely, if you kill the panel (applets do not die), and restart it, those applets get move & remove menu items, and even at right position (at the bottom of popup menu), differently from #71136 Applies only to out-of-proc applets, and only some of them: mixer, screenshooter, mini-commander
It seems to be some kind of race, or so. When panel_applet_setup_menu is called from within the factory callback, the applet-frame's part of the menu (move/remove) is not added. When calling setup_menu from an idle, it works.
After todays (20020211) changes to the panel, the mixer and multiload applets work for me, but test-bonobo-applet still needs to do its setup_menu in an idle to work.
Cosmetic, but the kind of small, irritating cosmetic that 'real' users expect us to get right, in my judgment. Ignore me if you think I'm wrong :)
This is a quite serious bug becuase it makes it impossible to remove applets from the panel
Create the popup BonoboUIComponent in the panel_applet_setup() function itself and store it in the PanelApplet private data.In panel_applet_setup_menu() and panel_applet_setup_menu_from_file() get the popup BonoboUIComponent from the PanelApplet private data. This solves the problem. Attaching the patch.
Created attachment 6822 [details] [review] patch
Adding patch keyword. Shivaram: in the future, please cc: yourself to bugs that you have attached patches to so that the maintainer can more easily ask you questions about the patch.
*** Bug 72624 has been marked as a duplicate of this bug. ***
strange but... yes, with this patch all applets get generic menu items, even mini-commander ok to commit?
Who was that question directed towards, Gedeminas?
This turned out to be a race condition/re-entancy bug in libbonoboui. Fixed in CVS
*** Bug 71672 has been marked as a duplicate of this bug. ***
*** Bug 71670 has been marked as a duplicate of this bug. ***