Go to file
Martin Klapetek fa643132bc Use QScreen::virtualGeometry() for computing panel struts
QScreen::availableGeometry() returns screen size minus the struts, which is fine on first Plasma start. But if Plasma crashes, the struts set on the startup are not cleared and then when Plasma autorestarts, availableGeometry() gives it rect with the old struts to which Plasma adds one more panel height (so the total strut height is panel.height()*(numberOfCrashes+1)).

Using QScreen::virtualGeometry() gives us the whole screen including
struts and the new struts are computed and set properly.

Reviewed-by: Marco Martin
2014-03-07 17:18:32 +01:00
autotests Remove KRunner from Plasma-Framework 2014-02-11 18:03:06 +01:00
desktoptheme new graphics for tabbars 2014-03-05 20:14:52 +01:00
examples use the Id, not the wid 2014-03-05 16:09:54 +01:00
src Use QScreen::virtualGeometry() for computing panel struts 2014-03-07 17:18:32 +01:00
tests tests and autotests in top level dir 2014-02-10 15:17:07 +01:00
tools call the import org.kde.plasma.plasmoid 2014-02-04 17:01:28 +01:00
.reviewboardrc Add reviewboardrc file 2013-08-16 21:58:50 +01:00
CMakeLists.txt Upgrade ECM version requirement and KF5 version. 2014-03-01 12:52:02 +01:00
config-compiler.h.cmake enable build of plasma subdir 2013-01-30 14:53:30 +01:00
config-prefix.h.cmake enable build of plasma subdir 2013-01-30 14:53:30 +01:00
COPYING Add COPYING and COPYING.LIB files 2013-12-23 18:39:10 +00:00
COPYING.LIB Add COPYING and COPYING.LIB files 2013-12-23 18:39:10 +00:00
CTestConfig.cmake enable build of plasma subdir 2013-01-30 14:53:30 +01:00
CTestCustom.cmake enable build of plasma subdir 2013-01-30 14:53:30 +01:00
FindPlasma.cmake Try a bit saner setup of the cmake foo 2013-05-03 03:17:26 +02:00
KF5PlasmaConfig.cmake.in Add KF5 prefix to plasma framework 2013-12-11 21:40:54 +01:00
KF5PlasmaMacros.cmake Add KF5 prefix to plasma framework 2013-12-11 21:40:54 +01:00
Mainpage.dox Remove last traces of org.kde.locale 2013-12-19 17:56:12 +05:30
plasma-framework.yaml Add README.md and yaml files 2013-12-20 20:11:24 +01:00
README.md some description 2014-02-10 11:20:50 +01:00

Plasma Framework

The plasma framework provides the foundations that can be used to build a primary user interface, from graphical to logical components.

Introduction

The plasma framework is made by a library component and a runtime component:

  • libplasma: this is a library for the business logic, it manages: ** rendering of SVG themes ** loading of files from a certain filesystem structure: packages ** data access: dataengines ** loading of the plugin structure of the workspace: containments and applets

  • QML script engine: given the data provided by an Applet or a Containment, it maps to loading of an actual QML representation of it

  • QML components: sets of QML components to provide a widget set, and to access to libplasma components, such as SVG themes and dataengines.

  • Runtime environment: the plasma-shell executable. The runtime that will load the actual workspace, it's completely controlled by QML, by itself doesn't have any UI.