Plasma/Activities: Difference between revisions
< Plasma
(→Plasma) |
|||
Line 1: | Line 1: | ||
===Plasma=== | ===Plasma Desktop=== | ||
the plasma side of activities... | the plasma side of activities... | ||
Line 19: | Line 19: | ||
====guts==== | ====guts==== | ||
* Activity could pay better attention to its containments, in case they get moved around by something else... it kinda assumes that it has full control when it doesn't. | * Activity could pay better attention to its containments, in case they get moved around by something else... it kinda assumes that it has full control when it doesn't. | ||
===KWin=== | ===KWin=== |
Revision as of 21:48, 27 January 2011
Plasma Desktop
the plasma side of activities...
bugs
functionality
- support switching to other-screen containments (explained better on the Multiscreen page
- activity manager UI
- sorting of the activities (probably by last activation?)
- 'running'/'stopped' categories that scroll to the first running/stopped activity
- something in the panel that tells me what activity I'm on and lets me switch quickly
polish
- those remove/stop buttons could be a lot prettier. hover effects n'stuff
- random wallpaper when creating a new containment?
- prettify the search filter?
guts
- Activity could pay better attention to its containments, in case they get moved around by something else... it kinda assumes that it has full control when it doesn't.
KWin
windows can be associated with activities
bugs
- iirc some effects leave 'holes' for windows on other activities. need to check if anyone solved that
features
- special window rules for activities, for those stubborn apps that will never play well (might want to wait until session support is in though)
- turn libtaskmanager's window-context-menu stuff into a library that can be reused instead of reimplemented in three places (there, kwin and somewhere-I-forget).
Sessions
ksmserver handles your login and logout session; now it's going to handle saving and restoring the non-plasma side of activities too :)
bugs
functionality
- give the activity kded API for open/closed activities (a close will have to be requested first, because ksmserver can cancel it, and we want the plasma part going down last for prettiness. that means we need cancel/done functions so that plasma's notified when ksmserver finishes.
features
- have a look at that "legacy" session stuff
- start dealing with behaviour for processes on >1 activity (can probably note who they're sharing with, copy on store and purge/skip on restore)
- start looking into making apps activity-aware and improving session support
Nepomuk
features
- tell us whether a resource is associated with an activity, so that its window can be auto-associated
activitymanager kded
New API...
definitely needed:
- void requestCloseActivity(id);
- QStringList openActivities();
- QStringList closedActivities();
signals:
- activityClosed(id);
- activityCloseCancelled();
not 100% sure about:
- in KActivityInfo, bool isOpen() or State state() (possible values Open, Closed, Opening, Closing) ?
notes:
- only one activity can be in an inbetween state (opening/closing) at a time, but it can be in this state for an arbitrary amount of time (eg. if an application asks whether to save and the user doesn't answer).
- although opening can take more time than closing, it's not interactive, so it would be easy to pretend it's instant. the catch is that you can't actually open/close any others until that one's done opening.
- if the activity manager can't find anyone to close the session for it (say, if the user's running compiz), it will assume there's nothing to save and immediately emit activityClosed.
Ideas
/Ideas for the future