activities
Chani
chanika at gmail.com
Fri Feb 5 01:54:17 CET 2010
hey guys :) this is a bit of a pre-emptive email... ramblurr was saying he'd
email some questions, and yagami was having ideas in #kwin, and there's some
possible confusion I'd like to address, so... well, here I am.
We seem to have two or three definitions of the word "activity" in kdebase now.
Oops.
First, there's the original: desktop containments.
Second, there's the nepomuk activities: they're UIDs that can have an
associated name, and then other arbitrary things can be associated with them.
Third, there's my "everything you need for what you're working on" plan, which
will pull in kwin and new session stuff and applications, and *probably* will
be tied to a set of containments (one containment, for those of us with one
screen). Hopefully this will merge with nepomuk's activity stuff, so we can
count only two definitions of "activity" in kde.
And so, confusion abounds! Oh joy :/
The first thing that comes to mind is, can we rename one of these concepts? We
have activities "the group of widgets on your desktop" and activities "the
windows/files/whatever for your current project". Can someone come up with a
different name for one? I'd take Context but aaron's already defined that to
mean activity+geolocation.
For the rest of this i'll just say "containment" instead of plasma-activity,
and when i say "activity" i mean the nepomuk/kwin/etc thing.
I wish the campkde videos were up so I could just point to that. (which
reminds me - I owe someone a screencast!) but they're not, so I'll have to
repeat a lot of that discussion here.
I want to explain a few things about my current view on activities...
One thing that is *very* important to me is that people must be able to
understand activities enough to use them. A lot of people really don't get
virtual desktops. I don't want to hold back those of us who do, but neither do
i want to make a complex beast that scares off all but the geeks.
quick review for anyone who's forgotten: I want to be able to associate
windows with activities so that they're only shown on those activities (yes,
plural, not like virtual desktops where it's all or one). later I want
applications to adapt to the current activity (example: filedialog showing
special Places for that activity), I want to be able to save/restore the whole
activity - both containment(s) and windows - and then someday I want to start
automatically associating new windows with activities based on stuff like
nepomuk tags on the file that's being opened.
Anyways, to help people get it, I think it will be beneficial to tie the
activity to N containments, where N is the number of physical screens. Maaaybe
we can allow more containments if we can do it nicely (someone with a small
screen might want more widgets than he can fit) but let's start with it being
1:1 with the physical space. (Side note- a scrollable containment, like
newspaper, solves the more-space issue but breaks the scrollwheel-changes-
desktops misfeature.)
Having this activity-containment tie gives users an anchor. The activity isn't
a completely abstract concept then; it's got a more physical representation.
And if users are smart they'll give each activity its own wallpaper; having a
pretty picture makes it far easier to tell them apart and remember where you
are.
Now the part aaron's not going to like . ;) I think that the spatial layout of
virtual desktops, and the pretty composite effects showing that layout, really
help users grasp the concept better. I think that for most people, it makes
sense to start out with the same spatial stuff to help people not feel lost.
I'm not talking about something added on here - that'd be confusing, the way
the zui and desktopgrid are confusing. I'm talking about a merge. Tying
activities to virtual desktops, a strict 1:1 relationship. I'd still want an
option to unlink them though - there are plenty of people who have tons of
stuff open and need the extra desktops even within one activity.
Here's where I run up against cruel reality, though. Virtual desktops have a
lot of limitations most people don't notice. Some of them can be fixed, some
miight be fixable or could be worked around, and some are just evil.
I think it's *possible* to fake removing a virtual desktop that isn't the last
one. I worry about small things like applications assuming they're on exactly
one desktop. I don't think it's possible to beat the composite monster,
though.
We've avoided it for desktopcontainment with the per-desktop-containment
monstrosity. We've avoided it for the taskbar by not showing panels in effects.
But how do we avoid it when apps like kmail start adapting their content to
the current activity? I mean, maybe by then we'll get some new magic that uses
more resources to render the apps separately for each activity, but... Eew.
And you still have the problem that if you add a 7th virtual desktop, desktops
4 and 5 (or 3 and 6), which were once adjacent, are now further apart.
So while in theory it makes sense to be able to merge vdesktops with
activities, in reality it'd end up feeling awkward and hacky. :(
I've kinda hit a roadblock there, and haven't thought of a way around it.
I am *very* open to suggestions on how to make this easy to use without
crippling it. :)
so, yeah, two open issues I'd like feedback on:
how can we make activities simple and non-threatening to the new user?
what do we do about a dual-monitor computer having two activities
(desktopcontainments) for each activity (in nepomuk)?
--
This message brought to you by eevil bananas and the number 3.
www.chani3.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20100204/d48ffc64/attachment.sig
More information about the Plasma-devel
mailing list