Go to file
Aleix Pol f75eb2d984 Don't connect to signals until the class has been initialized
While profiling plasmashell memory usage with Vishesh we realized that most
of the usage came from loading the Background image repeatedly.

We traced it back to this change, where we were connecting to
wallpaperChanged before initializing it, so it would initialize it again,
loading the wallpaper twice. It's not that we were leaking the object,
AFAIK, but loading an image using QQuickImage already raises the memory
quite a bit.

This change alone reduces by 15% the memory usage of my plasmashell (with 2
screens, that makes it a bit worse, because there's 2 DesktopViews then).

REVIEW: 119216
2014-07-10 19:53:03 +02:00
autotests SVN_SILENT made messages (.desktop file) 2014-07-10 04:23:58 +00:00
docs fix plasmapkg2 manpage 2014-05-05 13:16:05 +02:00
examples SVN_SILENT made messages (.desktop file) 2014-07-10 04:23:58 +00:00
src Don't connect to signals until the class has been initialized 2014-07-10 19:53:03 +02:00
tests SVN_SILENT made messages (.desktop file) 2014-07-10 04:23:58 +00:00
.reviewboardrc Fix .reviewboardrc syntax 2014-06-02 17:39:23 +01:00
CMakeLists.txt Upgrade ECM version requirement to 1.0.0 after all. 2014-07-01 20:19:11 +02: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
KF5PlasmaConfig.cmake.in Fix Plasma_INCLUDE_INSTALL_DIR variable in config module 2014-04-26 12:56:34 +01:00
KF5PlasmaMacros.cmake Don't install dummydata folders with plasma_install_package 2014-06-12 16:42:43 +02:00
metainfo.yaml Add framework information in metainfo.yaml files 2014-04-26 15:35:30 +02:00
README.md plasma-shell is no longer there 2014-04-26 00:26:41 +02: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 provides the following:

  • A C++ library: libplasma
  • Script engines
  • QML components

libplasma

This C++ library provides:

  • rendering of SVG themes
  • loading of files from a certain filesystem structure: packages
  • data access through data engines
  • loading of the plugin structure of the workspace: containments and applets

See @ref libplasma.

Script engines

Provides support to create applets or containments in various scripting languages.

QML components

org.kde.plasma.core

Bindings for libplasma functionality, such as DataEngine and FrameSvg, see @ref core.

org.kde.plasma.components

Graphical components for common items such as buttons, lineedits, tabbars and so on. Compatible subset of the MeeGo components used on the N9, see @ref plasmacomponents.

org.kde.plasma.extras

Extra graphical components that extend org.kde.plasma.components but are not in the standard api, see @ref plasmaextracomponents.