[sugar] Activity launching changes

Marco Pesenti Gritti mpgritti
Mon Oct 8 10:02:30 EDT 2007


On 10/8/07, Bert Freudenberg <bert at freudenbergs.de> wrote:
> No idea, I did not quite get how the new regime works. Could you
> please explain it at
>
>         http://wiki.laptop.org/go/Activity_DBus_API

Well, I'm not sure it make sense to explain it there, since DBus is
not involved in it anymore.

See the Exec field explanation on
http://wiki.laptop.org/go/Activity_bundles

When starting an activity instance Sugar is now just launching the
command line specified by the Exec activity.info field, adding
--activity-id and --object-id to it. This just work for activities
that supports multiple processes.

Activities that doesn't support multiple process will have to
implement some sort of IPC to ensure process uniqueness. The way this
is usually implemented in desktop application (firefox, evince, totem
etc) is:

* Instance1 starts, see that there are not previous instances running
and open Window1
* Instance2 starts, see that Instance1 is running and requests it to
open Window2
* Instance2 exit

The idea is that in general activities should support multiple
processes. But for Web and Etoys we are going to special case Rainbow
to allow this.

Marco



More information about the Sugar-devel mailing list