Previously shells, activities, shellcorona and corona all tried to
manage
which screen a containment was on.
This version moves all screen management into ShellCorona so we have a
central place for keeping tracking of containments, activities and
screens.
Recalculate position when screen has changed or when the location changes.
Recalculate position when the thickness changes, otherwise it grows outside
of the window when a bottom panel thickness changes (we change it through
setHeight).
Ues QScreen::geometry instead of QScreen::virtualGeometry. The virtual
geometry is, according to the documentation and empirical experience, the
geometry of all the virtualDesktop.
REVIEW: 114362
They do the same on Unix, but on Windows ConfigLocation is erroneously
pointing to an app-specific directory. Fixed in qtbase 44d48862c0 by
adding GenericConfigLocation for this purpose. Available in Qt 5.2.0 rc1.
We restart plasma-shell after crashes. When it crashes subsequently on startup,
and more than two times in a row, we give up in order to not endlessly loop.
Once the shell process stays alive for at least 15 seconds, we reset the crash
counter, so a later crash, at runtime rather than on startup will still be
recovered from.
This logic is very similar as to how kwin handles it.
DIGEST:
DesktopView incorrectly filled the geometry of screen()
screen() will be the screen of the parent shell, not the correct
screen.
As we are using QScreen, shellcorona is ported to use that instead
of QDesktopWidget.
REVIEW: 114149
Stop using classes from kde4support:
- KComponentData is deprecated, it will be using QCoreApplication::
applicationName() and QCoreApplication::applicationVersion(). Of course,
this means that the existing shells will have to be ported. I have no
problem with doing that port myself, if I'm told where to look into.
- Drop usage of KLocale, ported to QLocale
- Drop usage of KStandardDirs, ported to QStandardPaths
- Drop usage of KIcon, ported to QIcon
Furthermore, there's a module in src/declarativeimports/locale that IIUC
exposes KLocale bindings to QML. A specific plan to port it should happen
as well.
REVIEW: 113920