On 19/01/11 21:53, Julien Lavergne wrote:
> 2011/1/19 Julien Lavergne<[email protected]>:
>> 2011/1/19 Joost van der Hoff<[email protected]>:
>>> I am having a problem adding the standard LXPanel right-click dropdown
>>> menu the GlobalMenu plugin I am writing. Adding it to the plugin's top
>>> level container as in the example plugin doesn't work. I can add a
>>> mouseclick listener to the GlobalMenu widget but that overrides the
>>> listener which makes the GlobalMenu applet useful as a global menubar.
>>> Does anyone know how to add the right click dropdown menu without losing
>>> major functionality?
>> Try to remove any g_signal_connect to the top level container of the plugin.
>>  From you example in the howto, try to remove :
>> g_signal_connect (G_OBJECT (p->pwid), "button_press_event", G_CALLBACK
>> (button_press_event), (gpointer) p);
>>
>> It worked for me for my indicator plugin.
> Sorry, I posted too fast, it worked when I added more signals. I have this :
>
>      g_signal_connect(p->pwid, "button-press-event",
> G_CALLBACK(plugin_button_press_event), p);
>      g_signal_connect(indicator->menubar, "button-press-event",
> G_CALLBACK(menubar_press), NULL);
>      g_signal_connect(indicator->menubar, "scroll-event", G_CALLBACK
> (menubar_scroll), NULL);
>      g_signal_connect_after(indicator->menubar, "expose-event",
> G_CALLBACK(menubar_on_expose), indicator->menubar);
>
> where p->pwid is the top level plugin widget, and indicator->menubar
> the widget embedded into this top level plugin widget. I remembered
> that I had the same problem than you until I connect the signals of
> the indicator widget.
>
> Hope it will help.
>
> Regards,
> Julien Lavergne
>
I removed the handler from p->pwid, dunno if this has been a factor in 
the solving. But the problem magically disappeared when I made my 
callback function static. Problem solved :)
I have now also uploaded my source to 
http://home.student.utwente.nl/j.vanderhoff/downloads/lxglobalmenu.tar.gz, 
so if you are interested you can take a look at the source code and 
maybe try if it works for you. You do however need the globalmenu-server 
component of Gnome-GlobalMenu in order to compile and run the code. 
There is also a bug in the Makefile generation causing the -lserver 
argument to be passed to gcc, you should change this to -lglobalmenu-server.

2noob2banoob

------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Lxde-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lxde-list

Reply via email to