Difference between revisions of "Plasma/PlasmoidScripting"

Jump to: navigation, search
(Generic applets)
(Porting Plasmoids to QML)
(5 intermediate revisions by 2 users not shown)
Line 41: Line 41:
= Porting Plasmoids to QML =
= Porting Plasmoids to QML =
This part contains the current state of plasmoids that are being transformed to QML. Developers please update the status of the same here.
All information about QML plasmoid porting has been move [[Plasma/QMLPorting#Porting_Plasmoids_to_QML | here]]
Also, feel free to add any that you may be porting, if they aren't listed.
'''REMEMBER!''' when you merge them to master, update the feature plan, so our release monkeys can keep track. (link to 4.9 schedule when it gets up, since 4.8 is now frozen/tagged remember)
= TODO =
== Desktop Applets ===
* '''Kickoff'''
** '''Status:''' Almost done, needs reviewing, merging and testing
** '''Developer:''' Martin Gräßlin
** '''Source:''' "kickoff-qml" branch of kde-workspace
* '''Pager'''
* '''Tasks'''
** '''Status:''' Ongoing
** '''Developer:''' Shaun Reich
** '''Source:''' "plasma/sreich/tasks-qml" branch of kde-workspace
* '''Trash'''
* '''Window List'''
== Generic applets ==
* '''Activity Bar'''
* '''Analog Clock'''
** '''Status:''' Ongoing
** '''Developer:''' Viranch Mehta
** '''Source:''' "plasma/viranch/analogclock" branch of kde-workspace
* '''Battery'''
** '''Status:''' merged
** '''Developer:''' Viranch Mehta
** '''Source:''' "plasma/viranch/powermanagementservices" branch of kde-workspace
* '''Notifications'''
** 70% done plasma/mart/notifications-qml
** derived from the active one, still some elements missing
* '''Calendar'''
* '''Dictionary'''
** '''Status:''' Almost done, working on selecting dictionary to use
** '''Developer:''' Shaun Reich
** '''Source:''' master branch of declarative-plasmoids repository
* '''Digital Clock'''
** '''Status:''' Started
** '''Developer:''' Gregor Taetzner
** '''Source:''' plasma/brummbq/digital-clock of kde-workspace
* '''Picture Frame'''
* '''Icon'''
* '''Kate session profile applet'''
** '''Status:''' 63.29% completed; waiting for other session applets to get 110% done.
** '''Developer:''' Shaun Reich
** '''Source:''' "plasma/sreich/declarative-kate-applet" branch of kate
* '''Kate session profile applet'''
** '''Status:''' Ongoing waiting for other session applets to get 110% done.
** '''Developer:''' Shaun Reich
** '''Source:''' ? branch of ?
* '''Lock Logout'''
** '''Status:''' Almost done, needs some fixing, reviewing and testing before can be merged
** '''Developer:''' Viranch Mehta
** '''Source:''' "plasma/viranch/powermanagementservices" branch of kde-workspace
* '''Now Playing'''
** '''Status:''' Done.
** '''Developer:''' Alex Merry
** '''Source:''' master branch (to become 4.9 branch) of kdeplasma-addons
* '''Panel Spacer'''
* '''Quicklaunch'''
** '''Status:''' Ongoing
** '''Developer:''' Ingomar Wesp
** '''Source:''' "plasma/iwesp/quicklaunch" branch of kde-workspace
* '''RSS Now'''
** '''Status:''' Ongoing
** '''Developer:''' Giorgos Tsiapaliwkas
** '''Source:''' master branch of declarative-plasmoids
* '''News'''
** '''Status:''' Ongoing
** '''Developer:''' Marco Martin
** '''Source:''' master branch of declarative-plasmoids repository
* '''Microblog'''
** '''Status:''' Ongoing
** '''Developer:''' sebas
** '''Source:''' master branch of declarative-plasmoids repository
* '''System Monitor'''
** ''Status:''' Ongoing but stalled until Qt 5/QML2 (as it has the canvas api we need to use), yet we can't depend on qt5 yet
** '''Developer:''' Shaun Reich
** '''Source:''' plasma/sreich/qml2-system-monitors branch of kde-workspace
* '''System Tray'''
* '''Timer'''
** '''Status:''' Planned
** '''Developer:''' Shaun Reich, but up to grab if someone can do it before I get around to starting on it.
** '''Source:''' kdeplasma-addons
* '''Web Browser'''
= DONE =
* '''Konsole session profile applet'''
** '''Status:''' Merged; done
** '''Developer:''' Shaun Reich
** '''Source:''' master kdeplasma-addons
* '''Konqueror session profile applet'''
** '''Status:''' Merged; done.
** '''Developer:''' Shaun Reich
** '''Source:''' master kdeplasma-addons
* '''Device Notifier'''
** '''Status:''' Done, merged. Needs bug fixing.
** '''Developer:''' Viranch Mehta

Latest revision as of 19:31, 14 September 2012

This page records currently outstanding TODOs for the Javascript and QML Plasmoid scripting support. This page deals with the Javascript only bindings or the QScriptEngine related bindings shared between both. Please feel free to tackle any of the items below at your convenience. For QML specific items, please see http://community.kde.org/Plasma/DeclarativeScripting

I/O Write

  • write methods that match the read I/O methods


  • POST requests


  • add methods to Plasma::LineEdit that map to the most important parts of KLineEdit's autocomplete API

QPixmap (and QImage)

  • ability to create from a QByteArray
  • ability to create from a remote URL


  • readonly access for KLocale: units of measurement, time, currency etc

Access Control

  • Central mechanism for controlling individual plasmoid access to DataEngines, Services and Extensions
    • improve AppletAuthorization and use it in AppletInterface::dataEngine to restrict access
    • perhaps allow the Containment to provide some policy?
    • scriptable policies, so they are runtime?
  • Integrate the cryptographic signing GSoC branch
  • Control access to DataEngines based on advertised safety levels


  • QMenu popups

Configuration UI

  • Expand/enrich config UI handling (Plasma::Widget and/or QML based?)

Porting Plasmoids to QML

All information about QML plasmoid porting has been move here

This page was last edited on 14 September 2012, at 19:31. Content is available under Creative Commons License SA 4.0 unless otherwise noted.