Iago had a talk with Paolo Borelli this afternoon while I was rebuilding some Gnome 2.14 components. This is a little extract of the talk:
<pbor> there are other hacks that can be done though :)
<iago> I hope so
<iago> :)
<iago> sergio told me
<iago> something about dbus
<pbor> yeah
<iago> that would be interesting
<pbor> we would like to try to use dbus instead of bacon-message-connection
<pbor> something like evince and epiphany do
<iago> cool
<sergio> eo
<iago> is that a high priority task?
<sergio> I lost connection :(
<pbor> enforcing just one instance of gedit using dbus and the second time gedit is launched use dbus to pass the list of args to the running
So, while pbor was away (he had to pick somebody I began taking a look at the D-BUS tutorial and the evince source. The D-BUS tutorial can be found here
I finally talked with Paolo for a time, nice guy this Paolo
<pbor> sergio: yup... pretty much what we talked about the last time
<pbor> sergio: I know little about dbus to be honest, but it should be the usual deal
<pbor> sergio: register a connection (or whatever it is called in the dbus jargon) at startup...
<sergio> pbor: I know a little too, but I want to learn
<pbor> other instances check if the connection is there and if it's there they send a message through the bus
<pbor> usual rpc stuff
<sergio> yes
<pbor> the arguments passed to the following instances should be marshalled through the bus
<sergio> so you want dbus to share the gedit parameters of the first instance of the program with the other instances?
<pbor> no
<pbor> I mean
<pbor> first time gedit is launched it starts up the connection
<pbor> if then I run `gedit foo.c` on the command line
<pbor> gedit should connect through dbus to the running instance
<pbor> and pass it the argument 'foo.c'
<pbor> along with the command 'open'
<pbor> or something like that
<sergio> ok I understand
<pbor> it would be really neat if this could be wrapped up in a class/gobject
<pbor> but I am not sure if it is possible
<sergio> neither do I
<sergio> I'll take a look deeply
<pbor> great
<pbor> take the time you need
<pbor> I am not sure it's worth switching for 2.14, bacon-message-connection works well enough for now
<sergio> ok
<pbor> long term it makes sense to use dbus