1 libplasma 3.1 / KDE 4.3
2 =======================
9 Developer Documentation
10 -----------------------
16 *NEW: overlays for a filigrane effect, can be either random positioned, fixed, scaled or tiled
24 * NEW: plasma-mid, a shell for mobile internet devices
34 * Plasmoids and Containments
36 * Added support for other Twitter API based services like identi.ca (that is based on laconi.ca).
47 libplasma 3.0 / KDE 4.2
48 =======================
53 * libplasma has moved to kdelibs from kdebase-workspace and as such there is no longer a need to use FindPlasma.cmake. FindKDE4 now provides all the necessary plasma CMake bits needed, and using libplasma does not create a kdebase-workspace dependency for your application anymore.
56 * Symbol Versioning: limit loading of plugins to those that match the libplasma version
57 * NEW: ToolTipManager for Plasma style tooltips
58 * NEW: Wallpaper plugins for Containments
59 * NEW: Context for coordinating and publishing Context information, such as the current Activity or phsyical location
61 * sizeHintChanged() signal. A containment (such as a panel) can adjust its size based on changed sizehints of an applet
62 * ContextConstraint events and access to the current Context object
63 * Shortcut editor in Applet configuration dialog allows setting of global shortcuts per-widget
64 * NEW: Plasma::Extender and Plasma::ExtenderItem, allowing visual, relocatable extensions to Applet
65 * NEW: PopupApplet, which switches between an icon with a popup in a Horizontal/Vertical containment (such as a panel) and the widget directly on the canvas in a Planer containment (such as a desktop), the icon can be replaced with custom graphics or widgets by the implementation
67 * Support dropping of arbitrary data if the mimetypes are supported by an applet
68 * Activity naming and Context support
69 * Toolbox can be positioned in any corner or edge
70 * Toolbox actions are displayed as an always open toolbar when zoomed out for improved usability
72 * addOffscreenWidget/removeOffscreenWidget: manage canvas items that should not appear in a primary view (e.g. Extenders)
73 * "screen" information querying added to Corona to allow different approaches for viewports; e.g. using KWindowSystem and QDesktopWidget for the Plasma shell, but window coordinates for plasmodviewer or other non-desktop apps.
75 * PackageStructure supports arbitrary URIs (in addition to auto-discovery for package) structure description files.
77 * Package browsing interface can be provided by the PackageStructure plugin, allowing for 3rd party widget collectionsto offer online browsing and fetching customizations
79 * setting the margins via in-SVG hints
80 * paintPanel API additions to make it more like QPainter and Plasma::Svg
82 * TryExec key in .desktop file now supported, allowing runners that rely on an external application to be conditional loaded at runtime
84 * Allow enabling/disabling of operations at runtime
85 * Associate widgets with operations
87 * Support compressed SVGs (*.svgz)
88 * Supports a pixmap cache and a SVG element rects cache for faster startup
90 * NEW: Plasma::Slider based on QSlider
91 * NEW: Plasma::TabBar based on QTabBar, usable as both a standalone tabbar or as a tabwidget
92 * NEW: Plasma::Frame used to visually group widgets
93 * NEW: Plasma::TreeView used to put tree views or simple list in the canvas
94 * NEW: Plasma::BusyWidget used to indicate the loading of something
95 * NEW: Plasma::ToolButton based on QToolButton
96 * Plasma::PushButton is svg-themed
99 * WebContent painting update synchronization (fixes, among other things, scrolling)
100 * Prevent crash when Containment that AppletBrowser is associated with is deleted
101 * Applet handles work with all icon sizes (user system settings)
102 * Fix View so that when a new activity is added, don't move more than necessary;
104 * Dramatically fewer full paints by properly watching the exposed rect area, which for full screen Containments or large/complex Applets is quite significant in terms of performance
105 * Fix on-exit crashes related to focus handling issues in QGraphicsView
106 * Prevention of premature calls to Applet::constraintsEvent
107 * Applets now resize in "real time" without the pixelation
108 * Numerous crash fixes pushed upstream to QGraphicsView as well (focus resetting, scene queries on deletion..)
110 Developer Documentation
111 -----------------------
112 * Design documentation
120 * NEW: Extenders http://techbase.kde.org/Development/Tutorials/Plasma/UsingExtenders
124 * NEW: widgets/button for theming pushbuttons
125 * NEW: widgets/frame for theming Plasma::Frame used also in other widgets
126 * NEW: widgets/scrollbars to theme Plasma::ScrollBar and views scrollbars in libplasma
127 * NEW: widgets/configuration-icons: little icons used for configuration purposes across Plasma
128 * NEW: widgets/extender-background, widgets/extender-dragger: SVGs for new Extender widget
129 * NEW: widgets/tooltip: tooltip SVGa
130 * NEW: widgets/calendar
131 * NEW: widgets/containment-controls: icons and buttons for sizing panels and other containment tasks
132 * NEW: widgets/monitor: monitor for use in displaying mockups of on-screen content
133 * NEW: widget/glowbar: a glow for use by offscreen panels to indicate their location
134 * NEW: dialogs/kickoff: theming for the kickoff launcher menu
135 * color roles for buttons text and background added
136 * Plasma::Slider follows theme
137 * Applet handle all svg-themed
138 * The default Oxygen desktop theme radically improved across the board
144 * New Containment configuration for all desktop containments: wallpapers, activity type, theme
146 * Resizes itself when an applet changes its sizehint according to its maximum and minimum sizes
147 * Autohide and windows-cover-panel options
148 * Easier drag and drop to panel by showing an empty area between the two applets nearest to the mouse cursor
151 * Reposition toolbox when zooming out/in to avoid panel overlap
152 * Draw the missing part of the toolbox when repositioned because of a panel
153 * MS Windows compile fixes
157 * plasmoidviewer new command line options:
158 * --list lists known applets
166 * Plasma Engine Explorer
167 * Remove/update sources via context menu
168 * NEW: Plasma::Service interaction UI, using DataEngine::serviceForSource
170 * now supports listing, updating and removing packages
171 * NEW: Destkop Theme Details
172 * Customize and create new desktop themes with kcmshell4 destkopthemedetails
177 * Plasmoids and Containments
178 * NEW: Incoming messages: listens to various F/OSS email and IM apps for messages arriving
179 * NEW: Leave A Note: let people leave you notes on your computer, particularly handy for Plasma widets on the screensaver
180 * NEW: Previewer: drop files to preview them right on your desktop or panels
181 * NEW: System monitor
182 * NEW: Web browser: a WebKit browser in a desktop widget!
183 * NEW: Activity bar: quick switcher for Plasma activities
184 * NEW: Conway's game of life
185 * NEW: RSSNow! fancy online news ticker
186 * NEW: News, simple online news ticker
187 * NEW: Pastebin, drop text/data to upload it to a pastebin server
188 * NEW: Text snippets generator
190 * NEW: Bouncing ball, throw it and watch it bounce around!
192 * NEW: Character selector
194 * NEW: LCD Weather Station plasmoid
195 * NEW: Quicklaunch plasmoid
197 * Grouping: manually or by application
198 * Sorting: manually or by program name
199 * Limit windows shown by desktop, screen or minimized status
200 * Multiple rows of windows
201 * Theming improved to look more consistent with other buttons and generally be more sexy
203 * Supports hiding of icons
204 * Supports non-Freedesktop.org icons (e.g. full plasmoids or future creations) through a protocol abstraction
205 * Listens for and displays popup notifications and application jobs (e.g. file transfers)
206 * Now Playing media player controls: play, pause, stop, switch tracks and more from Plasma
209 * Export notes to file
211 * Custom colors for digital clock
212 * Standardized multi-timezone support in libplasmaclock
214 * Filtering improvements: mimetype and exclusion based.
215 * Sorting options, options for locking the icons in place and/or forcing grid alignment.
216 * Uses a top-to-bottom icon arrangement when used as a containment.
217 * Remembers icon positions.
218 * No longer blocks the GUI when loading large folders.
219 * Shows a busy animation while loading folders / laying out icons.
220 * Works in panels looking like a popup menu
221 * Default desktop containment
222 * Wheel mouse == switch desktop
223 * Creation of widgets on desktop containments puts them in empty areas, avoiding overlap
225 * Respects web proxy and other relevant KDE settings
226 * Improved mouse interaction (middle mouse zooms, context menu, etc)
227 * Comicproviders can be written in any language supported by Kross
228 * Comicproviders can be downloaded via "Get Hot New Stuff"
229 * New comicproviders can be added on kde-files.org
231 * Full keyboard support
232 * New lists with scrollbars
233 * Themes that match Plasma themes from kdeplasma-addons module
235 * When it is in the panel it is a popup, showing the avatar of the last person who sent a message and the numer of unread tweets as icon
237 * Lets you configure system wide trash behaviour like size limits
240 * NEW: Web site icons (favicons) engine
241 * NEW: Desktop notifications engines
242 * NEW: System monitor engine based on ksysguard (cpu, memory, heat, sensors, etc)
243 * NEW: Network engine
244 * NEW: Application jobs (aka kuiserver) engine; shows any published KJobs such as file operations
245 * NEW: Executables: run commands and get their output from stdout and stderr
248 * Plasma::Service for controlling media players
251 * Added a new source for managing PowerDevil profiles
254 * NEW: Kate sessions runner
255 * NEW: Recent documents runner
256 * NEW: Spellcheck runner
257 * NEW: Konqueror history runner
258 * NEW: Konqueror sessions runner
259 * NEW: Konsole sessions runner
260 * NEW: Nepomuk search runner
261 * NEW: Power management controller (via PowerDevil)
262 * NEW: Places (as seen in dolphin, file dialog, kickoff, etc) runner
263 * Converter runner now does speed, masses and nautical distances; conversion code moved to a shared lib
266 * NEW: Google Gadgets
267 * NEW: Python Plasmoids
268 * NEW: Ruby Plasmoids
269 * MacOS Dashboard widgets: improved JS API compliance
275 * much more featureful plasmoid object replaces applet object
278 * NEW: Image, Slideshow and Color plugins, based on previous code
279 * Directories recursed for images in Image and Slideshow plugin
280 * Slideshow images are randomized
283 * Various clocks ported to AppletClock for calendar and timezone consistency
285 * MS Windows compile fixes
286 * Taskbar shows thumbnails of windows on hover (4.1 regression)
287 * TwitterEngine respects web proxies and provides a proper Plasma::Service
289 * proper menu size restoration
290 * Hide Shutdown and Restart options when those actions are not possible.
291 * Make Sleep and Hibernate entries appear and work
292 * use Plasma::Theme to improve visual harmony with the rest of Plasma
297 * Plasma Screensaver: Plasma widget overlay for screensavers
298 * D-Bus autoactivation, so even if it has perma-crashed, selecting Run Command from Plasma will resurect it
299 * Alternate user interface: QuickSand
302 * Screensaver activation fixed to compensate for system clock changes
303 * Several crashes related to access of non thread safe code
307 Compile and runtime fixes for Microsoft Windows and Maemo