Re: gnome-panel and libpanel-applet port to dbus



Hi Carlos,

Le vendredi 30 d�mbre 2005 �9:43 +0100, Carlos Garcia Campos a
�it :
> Hi all, 
> 
> during the last days I've been working on porting libpanel-applet from
> bonobo to dbus. I have right now enough code to make a proposal. This
> port has two main goals:
> 
> 1.- The first one is the evident one, porting the IPC mechanism used for
> the communication between the panel and the applets by using dbus which
> is really good and  a modern IPC mechanism. 
> 
> 2.- The other goal is wrapping the use of that IPC system into the
> libpanel-applet so that both the panel and the applets don't need to
> know anything about IPC's. If in the future we need to change again the
> IPC system we'll only have to port the library, keeping the panel and
> (even most important) the applets without modifications. 
> 
> I think that one of the most important advantages of using dbus rather
> than bonobo is that dbus has a really good glib bindings, so that we can
> use the glib types, properties, signals, etc. Writing applets is even
> easier and you only need to know GTK+ and libpanel-applet. The panel
> code is also simpler and therefore easier to maintain. 
> 
> I've attached a patch[1] against gnome-panel CVS HEAD and a tarball[2]
> with all of the changes merged. It's requieres dbus 0.60 and intltool
> cvs head. 
> 
> Since it's a big patch, I'm going to try to explain briefly the contents
> of such patch. 
> 
> The PanelApplet class is almost the same, used to write applets. I've
> added a PanelAppletContainer class which is a container for applets.
> It's used by the panel and can be used easily by any other application. 
> 
> Localization of the applets available in the system is made by
> gnome-applets-manager. It's a simple dbus service also wrapped by the
> libpanel-applet. I haven't included it in the patch because it goes in a
> directory and I don't know how to include it, but it's in the tarball. I
> haven't also included the removed files because they made the patch
> bigger and they don't really provide useful information. 
> 
> Look at the patch for more implementation details and feel free to make
> any comment or whatever you think. 


I wanted to look at this in details, but I didn't find time. Anyway,
here are some comments:

  + thanks for working on this :-)

  + really, we don't want to move to dbus and forget bonobo like this.
    We should at least have a migration period during which applets of
    the two worlds can be used. So you should not remove the old code.

  + I think this means that we won't have in-process applets anymore.
    We're not using them right now, but some people wanted to use them
    for performance reasons. It's okay for me, though :-)

  + maybe it's a good time to consider making a libgnome-applet instead
    of libpanel-applet: there has always been discussion about having
    applets on the desktop, so...

  + I wanted to add some other comments, but I forget what ;-)

> If it make sense we can make a special cvs branch, continue working on
> it there, and merge it into head for gnome 2.15. I also have in mind
> writing a patch against gnome-applets since at the moment I've only
> ported the gnome-panel package. 

So, IMHO, we should create a libgnome-applet module and put most of the
code there. And we can of course make a branch for changing the panel to
use this lignome-applet library.

What do you think?

Vincent

-- 
Les gens heureux ne sont pas press�




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]