Go to file
Aleix Pol ab93d83890 Merge branch 'davidedmundson/framesvg_native'
Use FrameSVG as 9 tiles instead of uploading a big texture of the finished frame each time.
This also saves the cache being populated with full created frames in different sizes; which end up taking up space in the disk and shared memory cache as well as the GPU memory.
A code path falls back to the original uploading the entire texture if obscure settings are used, i.e overlay.

Benchmarks:
apitrace when resizing a frame goes from an average of 7.6ms per frame of CPU time just for the swizzling and uploading to 1.4ms
GPU time also drops from 40us to 10us

Themes will need to remove stretch-borders (when we gain nothing from stretching; i.e Breeze) to get the most out of it.

REVIEW: 119330
2014-07-21 18:38:11 +02:00
autotests SVN_SILENT made messages (.desktop file) 2014-07-17 08:59:54 +00:00
docs fix plasmapkg2 manpage 2014-05-05 13:16:05 +02:00
examples Merge branch 'master' into davidedmundson/framesvg_native 2014-07-17 22:43:08 +02:00
src Merge branch 'davidedmundson/framesvg_native' 2014-07-21 18:38:11 +02:00
tests Merge branch 'master' into davidedmundson/framesvg_native 2014-07-17 22:43:08 +02: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.