on Activities on Plasma2

Marco Martin notmart at gmail.com
Tue Oct 29 17:50:55 UTC 2013


Hi all,
so, activities are getting back in plasma2, and thanks to Ivan, the api of the 
client library is getting better as well.

So, waht we can do at the moment with it? we can switch activities,  
start/stop them, basic stuff, not all is 100% back but we can start from there

This gives us the opportunity to think about what we want from activities in 
the next iteration.
As i was talking on irc today with Aaron, plasma started with a completely 
different concept of activities, basically back then Activity==Containment and 
that was it.
then came kactivitymanager, and what was possible became a tad more 
interesting, and plasma was adapted to that. for plasma now activating set of 
containments is what happens when an activity gets activated, they are not 
the activity itself anymore.

but in plasma1 a lot of logic is still "in between", for instance the new 
activity "templates" on one hand are not only a set of containments like 
preferring folderview instead of desktop for one activity) but also things 
that aren't strictly about plasma, like a set of running applications.

but quite a big part of this templates mechanism is still managed by 
palsmaapp and desktopcorona (in plasma1)

so..
the creation of an activity based on a template should probably get in the 
activity manager api, and it would keep all the metadata needed, that in the 
case of plasma would be what template to use..
I'll try to explain better, as the workflow

* the activity manager *client* (that in this case will still be ui provided 
in plasma, but is just a detail) asks to create a new activity with a certain 
template, like "photo management"

* the activity manager daemon creates the activity, associeting the template 
identifier in the activity metadata (and doing operations that's probably 
better be done by the daemon, like starting/stopping applications)

* on plasma side, from the activity consumer, it reacts to activity creation, 
reads from the activity metadata the identifier of the template that should be 
used and creates the new containments accordingly

* the templates list should also be in some model provided by kactivities

(then as a related discussion there is what exactly more/new metadata we 
need in activities, like i would like to have a concept of bookmarked 
activities but ignore it for now, completely another thread :p)


opinions? comments?

Cheers,
Marco Martin


More information about the Plasma-devel mailing list