kde-workspace/plasma
Ivailo Monev 541043d2b4 plasma: optimize kill runner
attempting to cleanup every 50ms or create KSysGuard::Processes pointer
and suspend matching before the term length is checked is sub-optimal

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-16 12:15:48 +03:00
..
applets generic: move sub-projects from kde-baseapps [ci reset] 2022-05-14 21:56:54 +03:00
containmentactions generic: reimplement screen saver interface via xscreensaver 2022-04-13 01:27:15 +03:00
containments generic: reimplement screen saver interface via xscreensaver 2022-04-13 01:27:15 +03:00
dataengines generic: adjust to org.kde.JobView/org.kde.JobViewV2 interface changes 2022-05-14 20:05:52 +03:00
declarativeimports plasma: remove code for always false condition 2022-03-20 16:02:52 +02:00
design generic: reimplement screen saver interface via xscreensaver 2022-04-13 01:27:15 +03:00
desktoptheme generic: remove dashboard support 2021-07-16 04:04:04 +03:00
kpart generic: remove dashboard support 2021-07-16 04:04:04 +03:00
runners plasma: optimize kill runner 2022-05-16 12:15:48 +03:00
scriptengine plasma: build fix 2021-07-02 21:54:41 +03:00
sessions plasma: add session files 2022-04-01 17:43:48 +03:00
shells generic: reimplement screen saver interface via xscreensaver 2022-04-13 01:27:15 +03:00
toolboxes generic: replace installation paths with KDE4_ prefixed 2020-02-08 20:13:13 +00:00
tools plasma: organize sub-directories 2015-12-24 22:48:47 +02:00
wallpapers plasma: remove code for always false condition 2022-03-20 16:02:52 +02:00
CMakeLists.txt plasma: add session files 2022-04-01 17:43:48 +03:00
HACKING initial import 2014-11-13 19:30:51 +02:00
README initial import 2014-11-13 19:30:51 +02:00

PLASMA
======

The applications and plugins that provide the panels/desktop/dashboard parts of
the primary user interface for the KDE Plasma workspaces (Plasma Desktop, Netbook, etc).
Much of the functionality is provided by libplasma, which is found in kdelibs/plasma/.

For more information, please visit the Plasma website at http://plasma.kde.org.

Directory Structure
===================

Each top level directory denotes which workspace (desktop, netbook, screensaver, etc.)
the components within it apply to. There is a directory named "generic" for components
that do not apply to a specific workspace.

Within each of these top level directories, the following hierarchy exists:

               applets: Applets (aka "plasmoids" or "widgets") that are considered central
                        to the workspace in question

          containments: Standard containment objects that provide management for the
                        Plasma contents shown on panels, desktops, screensavers, etc.

           dataengines: DataEngines considered generally useful; more specific/niche
                        DataEngines can be found in kdeplasma-addons or extragear/plasma/

               runners: Provides matches to queries; used by KRunner, Kickoff, others

              shell(s): The application(s) that provide the Plasma viewing environment
                        for a given workspace / formfactor. They also provide
                        implementations of dialog placement, screen geometry, remote
                        widget notifications, access request UI, containment
                        management UI, etc. Essentially all the framework pieces needed
                        to provide appropriate rendering of an environment for a given
                        form factor or target device.

    containmentactions: Plugins that provide actions for context menus and other input
                        triggered action sets


In addition to the above, the generic directory also contains:

            wallpapers: Background rendering plugins for containments
         scriptengines: Glue between libplasma and APIs provided via dynamic languages or
                        3rd party systems; note that the Javascript scriptengines
                 tools: useful applications for working with Plasma apps, including:
                            * engineexplorer: a graphical utility to examine engines
                            * wallpaperviewer: a tool to view Plasma wallpaper plugins
                            * plasmoidviewer: a viewer for individual Plasma applets,
                              particularly useful for edevel and debugging

KDE Base Runtime
================
A number of important components live in the kdebase-runtime package in the plasma/
directory, including:

* The javascript ScriptEngines for Plasmoids, DataEngines and Runners
* plasmapkg: Installs, removes and lists plasma packages
* remotewidgetshelper: a small help tool for Plasma applets that are remoted over
  the network

The default SVG themes also exist in kdebase-runtime under desktopthemes/