Plasma/PlasmoidScripting: Difference between revisions

From KDE Community Wiki
 
(15 intermediate revisions by 6 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 ===
 
* '''Kick off'''
** '''Status:''' Ongoing
** '''Developer:''' Martin Gräßlin
** '''Source:''' "kickoff-qml" branch of kde-workspace
* '''Pager'''
* '''Tasks'''
** '''Status:''' Ongoing
** '''Developer:''' Shaun Reich
** '''Source:''' "master" branch of declarative-plasmoids
* '''Trash'''
* '''Window List'''
 
== Generic applets ==
* '''Activity Bar'''
 
* '''Analog Clock'''
** '''Status:''' Ongoing
** '''Developer:''' Viranch Mehta
** '''Source:''' "plasma/viranch/analogclock" branch of kde-workspace
 
* '''Battery'''
** '''Status:''' Almost done, needs reviewing, merging and testing
** '''Developer:''' Viranch Mehta (I'll merge it after Marco/Aaron reviews it)
** '''Source:''' "plasma/viranch/powermanagementservices" branch of kde-workspace
 
* '''Calendar'''
 
* '''Dictionary'''
** '''Status:''' Almost done, working on selecting dictionary to use
** '''Developer:''' Shaun Reich
** '''Source:''' master branch of declarative-plasmoids repository
 
* '''Digital Clock'''
 
* '''Picture Frame'''
 
* '''Icon'''
 
* '''Kickoff'''
** '''Status:''' Almost done, needs reviewing, merging and testing
** '''Developer:''' Martin Graesslin
** '''Source:''' "kickoff-qml" branch of kde-workspace
 
* '''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
 
* '''Notifications'''
** Should be (or should be based from) the notifications applet of plasma active
 
* '''Now Playing'''
** '''Status:''' Done.
** '''Developer:''' Alex Merry
** '''Source:''' master branch of scratch/alexmerry/nowplaying-qml
 
* '''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:''' up to grab
** '''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

HTTP

  • POST requests

Autocompletion

  • 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

KLocale

  • 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

  • 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