Review Request: Plasma + Nepomuk - libplasma patch - attempt 1

Aaron Seigo aseigo at kde.org
Thu Sep 24 03:02:21 CEST 2009



> On 2009-09-23 21:28:50, Aaron Seigo wrote:
> > /trunk/KDE/kdelibs/plasma/context.h, line 105
> > <http://reviewboard.kde.org/r/1699/diff/1/?file=11891#file11891line105>
> >
> >     is this equivalent to:
> >     
> >     forActivity(id)->name(); ?
> 
>  wrote:
>     Again, the context doesn't have a name
> 
>  wrote:
>     what exactly is the difference between "the context" and "the activity"?
> 
>  wrote:
>     context is a combination of the activity and the physical location of the machine/user. it may eventually contain other items (presence?)
> 
>  wrote:
>     and yet each activity has its own context? something doesn't feel right here.
>     
>     so... we have global contexty things like physical location... then we have a bunch of nepomuk "actvitites" which have a UID and a name and some more context associated with them (what context?), and map to plasma activity containments... and somewhere in the middle of all this we have an old Context class we've got to work with because of BC requirements.
>     
>     adding to my confusion is the fact that we seem to be using the same words for different things again. *shrug* maybe I should just wait until it's done... it just feels like something's not right.

the relationship is this:

Each Plasma::Containment may have a Plasma::Context associated with it
Each Plasma::Context object aggregates an Activity, the current geolocation information, etc.

The Activity is recorded in Nepomuk so that other applications can use them as well. The Activity has a name (for the user) and an ID (for info retrieval purposes).

At any given time zero or one Activity is the "current" activity.

plasma-desktop will need to map what it is showing in its Views using this informtion; e.g. when Activity Y is marked as the current activity in Nepomuk, it may want to switch to showing the Containment(s) where Containment::context()->activityId() == GlobalContext::currentActivity()->activityId(). (or whatever the API ends up being).

or plasma-desktop may decide to set the current Activity in nepomuk to whatever Containment the user just selected to focus on in the overview mode.

meanwhile, Kopete / Konqueror / Kontact / etc / etc may also choose to watch for the Activity in Nepomuk and alter what they are doing in response. They may also decide to create new Activities of their own, which plasma-desktop may elect to follow or ignore.

HTH.


- Aaron


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1699/#review2433
-----------------------------------------------------------


On 2009-09-23 20:19:36, Ivan Cukic wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/1699/
> -----------------------------------------------------------
> 
> (Updated 2009-09-23 20:19:36)
> 
> 
> Review request for Plasma.
> 
> 
> Summary
> -------
> 
> Nepomuk-based storage of plasma activities
> 
> 
> Diffs
> -----
> 
>   /trunk/KDE/kdelibs/plasma/CMakeLists.txt 1027137 
>   /trunk/KDE/kdelibs/plasma/applet.cpp 1027137 
>   /trunk/KDE/kdelibs/plasma/containment.h 1027137 
>   /trunk/KDE/kdelibs/plasma/containment.cpp 1027137 
>   /trunk/KDE/kdelibs/plasma/context.h 1027137 
>   /trunk/KDE/kdelibs/plasma/context.cpp 1027137 
>   /trunk/KDE/kdelibs/plasma/private/activitieshandler.h PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/activitieshandler.cpp PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/context_p.h PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/desktoptoolbox.cpp 1027137 
>   /trunk/KDE/kdelibs/plasma/private/fallbackactivitieshandler.h PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/fallbackactivitieshandler.cpp PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/nepomukactivitieshandler.h PRE-CREATION 
>   /trunk/KDE/kdelibs/plasma/private/nepomukactivitieshandler.cpp PRE-CREATION 
> 
> Diff: http://reviewboard.kde.org/r/1699/diff
> 
> 
> Testing
> -------
> 
> Needs more testing
> 
> 
> Thanks,
> 
> Ivan
> 
>



More information about the Plasma-devel mailing list