mirror-kde-plasma-desktop/design/plasma-desktop-screen-handling
Aleix Pol 88ae0b60b8 Initial import from the monolithic kde-workspace.
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
techbase wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:

http://community.kde.org/Frameworks/GitOldHistory

If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.

Branched from the monolithic repo kde-workspace, frameworks  branch, at commit
049113e719dd2fc4446d054fa1a3aada330094f0
2014-03-31 04:23:39 +02:00

14 lines
810 B
Text

How Screens Get Managed
-----------------------
* PlasmaApp handles the views
* DesktopCorona handles the containments with the help of Activity classes
So:
* When a screen is added: DesktopCorona tells the current Activity, which adds a new containment if needed. PlasmaApp responds to their creation
* When a screen is removed: PlasmaApp removes the associated view(s); we don't want the Containment to go away, however, since the screen may return
* When a screen changes geometry: the Views (DesktopView, PanelView) change their geometry and that of their containments if needed
Future work:
* Migration of panels from non-existent screens to existing screens (perhaps asking if the user would like them to migrate?)
* 'hibernation' of containments from non-existent screens (Activity will handle this)