Plasma/PW2Todo: Difference between revisions

From KDE Community Wiki
(add QMLPorting page here)
Line 89: Line 89:
{{FeatureProjectTodo|Qt Qml|[[Plasma/conditionalQMLImports|Conditional QML imports]]|all|[email protected]}}
{{FeatureProjectTodo|Qt Qml|[[Plasma/conditionalQMLImports|Conditional QML imports]]|all|[email protected]}}


|}
= Porting Plasmoids to QML =
This part contains the current state of plasmoids that are being transformed to QML and Plasma2. Developers please update the status of the same here.
'''REMEMBER!''' when start working, or you are done, update this page.
== Definition of Done ==
If you are porting a piece of code, think about the following list when trying to finish it:
* A Plasmoid is ported to QML
* It has been reviewed by the rest of the team
* merged into frameworks-scratch or master branch
* verified to load and work in Plasma 2
== Prioritized ==
The following items are necessary for a basic working desktop. This is pretty much what we need for our current default configuration.
=== Plasmoids ===
{| class="sortable" border="1" cellpadding="4" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
|- style="background: #ececec; white-space:nowrap;"
! Status !! Name !! Source !! Developer
{{FeatureProjectDone | Kickoff | kickoff-qml branch of kde-workspace  |[email protected]|Martin Gräßlin}}
{{FeatureProjectDone | ToolBox | kde-workspace frameworks-scratch  |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | Widget Explorer | plasma-framework  |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | Desktop | plasma/sebas/desktop-qml or frameworks-scratch branches in kde-workspace |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | Notifications | kde-workspace[frameworks-scratch]  |[email protected]|Marco Martin}}
{{FeatureProjectDone | System Tray | kde-workspace[frameworks-scratch]  |[email protected]|sebas}}
{{FeatureProjectInProgress | tasks | Nowhere  |[email protected]|Eike}}
{{FeatureProjectInProgress | Digital Clock | kde-workspace[frameworks-scratch]  |[email protected]|Heena Mahour}}
{{FeatureProjectInProgress | Battery Monitor | kde-workspace[frameworks-scratch]  |[email protected]|Kai-Uwe Broulik}}
{{FeatureProjectInProgress | devicenotifier | kde-workspace[frameworks-scratch]  |[email protected]|Bhushan Shah}}
{{FeatureProjectTodo | Folderview | nowhere |nobody|John Doe}}
{{FeatureProjectTodo | Panel | nowhere |nobody|John Doe}}
{{FeatureProjectTodo | Icon | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | calendar | kde-workspace[frameworks-scratch] |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Pager (already in QML)|  blocked on libkactivities |[email protected]|Luís Gabriel}}
|}
=== DataEngines ===
{| class="sortable" border="1" cellpadding="4" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
|- style="background: #ececec; white-space:nowrap;"
! Status !! Name !! Source !! Developer
{{FeatureProjectDone | tasks | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | time | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | applicationjobs |  kde-workspace[frameworks-scratch]  |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | apps | kde-workspace[frameworks-scratch]  |[email protected]|David Edmundson}}
{{FeatureProjectDone | soliddevice | kde-workspace[frameworks-scratch] |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | statusnotifieritem | kde-workspace[frameworks-scratch] |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | devicenotifications | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | hotplug | kde-workspace[frameworks-scratch]  |[email protected]|David Edmundson}}
{{FeatureProjectDone | keystate | kde-workspace[frameworks-scratch] |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | notifications | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | places | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectDone | powermanagement | kde-workspace[frameworks-scratch] |[email protected]|Sebastian Kügler}}
{{FeatureProjectTodo | calendar | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | activities | Nowhere  |[email protected]|Jon Doe}}
|}
== Planned for later ==
The following lists contain add-ons which are not in the default config.
=== Plasmoids ===
{| class="sortable" border="1" cellpadding="4" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
|- style="background: #ececec; white-space:nowrap;"
! Status !! Name !! Source !! Developer
{{FeatureProjectDone | analog-clock | Nowhere  |[email protected]|David Edmundson}}
{{FeatureProjectDone | Trash | heenamahour/gsoc  |[email protected]|Heena Mahour}}
{{FeatureProjectDone | Window List | heenamahour/gsoc  |[email protected]|Heena Mahour}}
{{FeatureProjectInProgress | Comic Strip | "rshah/comicqml" branch of kdeplasma-addons |[email protected] | Reza Fatahilah Shah}}
{{FeatureProjectInProgress | Calculator | kdeplasma-addons (Merged) |[email protected]|Luiz Romário Santana Rios}}
{{FeatureProjectInProgress | Konsole session | kdeplasma-addons (Merged)  |[email protected]|Shaun Reich}}
{{FeatureProjectInProgress | Konqueror session | kdeplasma-addons (Merged)  |[email protected]|Shaun Reich}}
{{FeatureProjectInProgress | Now Playing | kdeplasma-addons (Merged)  |[email protected]|Alex Merry}}
{{FeatureProjectInProgress | Activities | kdeworkspace master  ||}}
{{FeatureProjectInProgress | Weather | kdeplasma-addons master  |[email protected]|Luís Gabriel}}
{{FeatureProjectInProgress | Weatherstation | kdeplasma-addons master  |[email protected]|Luís Gabriel}}
{{FeatureProjectInProgress | Lock Logout | "plasma/viranch/powermanagementservices" branch of kde-workspace  |[email protected]|Viranch Mehta}}
{{FeatureProjectInProgress | Kate session |  "plasma/sreich/declarative-kate-applet" branch of kate  |[email protected]|Shaun Reich}}
{{FeatureProjectInProgress | Quick Launch | "plasma/iwesp/quicklaunch" branch of kde-workspace  |[email protected]|Ingomar Wesp}}
{{FeatureProjectInProgress | Fifteen Puzzle | Nowhere |[email protected]|Davide Bettio}}
{{FeatureProjectInProgress | KGet Widget | qmlwidget branch of KGet |[email protected]|Bhushan Shah}}
{{FeatureProjectInProgress | Timer | bettio/qml-gsoc-timer  |[email protected]|David Bettio}}
{{FeatureProjectInProgress | News | master branch of declarative-plasmoids repository  |[email protected]|Marco Martin}}
{{FeatureProjectInProgress | Microblog | master branch of declarative-plasmoids repository  |[email protected]|Sebas}}
{{FeatureProjectInProgress | Analog Clock | plasma/viranch/analogclock  |[email protected]|Viranch Mehta}}
{{FeatureProjectInProgress | Dictionary | master branch of declarative-plasmoids repository  |[email protected]|Shaun Reich}}
{{FeatureProjectInProgress | RSS Now | master branch of declarative-plasmoids  |[email protected]|Giorgos Tsiapaliwkas}}
{{FeatureProjectInProgress | System Monitor |plasma/sreich/qml2-system-monitors, (pre-5.0). Uses canvas, needs scaling, migration move to an applet, and sensor binding mostly|Shaun Reich}}
{{FeatureProjectTodo | Activity Bar (Already in QML) |  blocked on libkactivities  |[email protected]|Bhushan Shah}}
{{FeatureProjectTodo | lock_logout | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | panelspacer | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | quicklaunch | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | showActivityManager | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Binary Clock | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Blackboard | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Bookmarks | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Bouncy Ball | KILL IT  |[email protected]| Should just be killed?}}
{{FeatureProjectTodo | Bubblemon | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Character Selector | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Colour Picker | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Community | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | CPU Monitor | see System Monitors  |[email protected]| Shaun Reich}}
{{FeatureProjectTodo | Hardware Info | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Picture Frame | Nowhere  |nobody}}
{{FeatureProjectTodo | Panel Spacer | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | webbrowser | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Web Slice | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Notes | Nowhere  |[email protected]|Davide Bettio}}
{{FeatureProjectTodo | Keyboard | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Keyboard Layout | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | World Clock | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | Sal Containment| nowhere |nobody|John Doe}}
{{FeatureProjectTodo | Newspaper Containment | nowhere |nobody|John Doe}}
{{FeatureProjectTodo | Grouping desktop Containment | nowhere |nobody|John Doe}}
|}
=== DataEngines ===
{| class="sortable" border="1" cellpadding="4" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
|- style="background: #ececec; white-space:nowrap;"
! Status !! Name !! Source !! Developer
{{FeatureProjectDone | dict | kde-workspace[frameworks-scratch]  |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | executable | kde-workspace[frameworks-scratch] |[email protected]|Bhushan Shah}}
{{FeatureProjectDone | filebrowser | kde-workspace[frameworks-scratch] |[email protected]|Bhushan Shah}}
{{FeatureProjectTodo | favicons | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | geolocation | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | metadata | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | mouse | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | mpris2 | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | network | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | nowplaying | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | rss | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | share | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | systemmonitor | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | weather | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | searchlaunch | Nowhere  |[email protected]|Jon Doe}}
{{FeatureProjectTodo | akonadi | Nowhere  |[email protected]|Jon Doe}}
|}
|}

Revision as of 14:09, 6 September 2013

This document describes the necessary steps towards Plasma Workspaces 2 running on Wayland.


Planned Changes in Plasma Framework

Framework-based tasks that need completion before PW2:

Status Action Method Developer
IN PROGRESS Plasma::Applet API Review status <all>
IN PROGRESS Plasma::Containment API Review status <all>
IN PROGRESS Plasma::Corona API Review status <all>
IN PROGRESS Plasma::DataContainer API Review status <all>
IN PROGRESS Plasma::DataEngine API Review status <all>
IN PROGRESS Plasma::Service API Review status <all>
IN PROGRESS Plasma::Theme API Review status <all>
IN PROGRESS Plasma::RunnerManager API Review status] <all>
IN PROGRESS Misc API Changes  More API Issues <all>


Not all relevant classes have been reviewed yet, this list might expand in the future.


Planned Changes in Plasma Workspaces 2

Status Action Method Developer
IN PROGRESS QML Porting Plasmoids and Containments to QML <all>
TODO Screen Locker Componentize Lock Screen <all>
TODO Screen Locker Port screen locker config to QML <all>
TODO Screen Locker Port Greeter Widget away from QGV <all>
TODO Shell structure New kde-workspace structure <all>
TODO Shell Switching Create KWin effect for switching <all>
TODO Shell Switching Shell switching mechanism in plasma-shell <all>
IN PROGRESS Shell Switching kded Module to keep track of formfactor changes <Aaron>
TODO Shell Switching Port formfactor KCM <all>
TODO Shell Switching Enable/disable virtual keyboard based on formfactor <all>
IN PROGRESS Shell Package Create shell package for Desktop UX <all>
TODO Shell Package Create shell package for Active UX <all>
IN PROGRESS Look & Feel Package Create Look & Feel package for Desktop UX <sebas>
TODO Desktop Scripting Dynamic Activity-Desktop association <all>
TODO Desktop Scripting Property Activity-related API <all>
TODO Desktop Scripting Introspectible Plasmoid configuration <all>
TODO Desktop Scripting Rework wallpaper API <all>
TODO Step Back Step back, look at it as a whole, polish it like there's no tomorrow. <all>


Planned Changes in KWin

The following changes are needed in coordination with KWin:

Status Action Method Developer
TODO Window Placement Wayland-compatible placement of dialogs and tooltips and other windows <all>
TODO libtaskmanager Porting libtaskmanager to Wayland-compatible API <all>


Planned Changes in Qt

The following changes needed coordination with Qt and will end up upstream:

Status Action Method Developer
TODO Qt Qml Conditional QML imports <all>



Porting Plasmoids to QML

This part contains the current state of plasmoids that are being transformed to QML and Plasma2. Developers please update the status of the same here. REMEMBER! when start working, or you are done, update this page.

Definition of Done

If you are porting a piece of code, think about the following list when trying to finish it:

  • A Plasmoid is ported to QML
  • It has been reviewed by the rest of the team
  • merged into frameworks-scratch or master branch
  • verified to load and work in Plasma 2


Prioritized

The following items are necessary for a basic working desktop. This is pretty much what we need for our current default configuration.

Plasmoids

Status Name Source Developer
DONE Kickoff kickoff-qml branch of kde-workspace <[email protected]>
DONE ToolBox kde-workspace frameworks-scratch <[email protected]>
DONE Widget Explorer plasma-framework <[email protected]>
DONE Desktop plasma/sebas/desktop-qml or frameworks-scratch branches in kde-workspace <[email protected]>
DONE Notifications kde-workspace[frameworks-scratch] <[email protected]>
DONE System Tray kde-workspace[frameworks-scratch] <[email protected]>
IN PROGRESS tasks Nowhere <[email protected]>
IN PROGRESS Digital Clock kde-workspace[frameworks-scratch] <[email protected]>
IN PROGRESS Battery Monitor kde-workspace[frameworks-scratch] <[email protected]>
IN PROGRESS devicenotifier kde-workspace[frameworks-scratch] <[email protected]>
TODO Folderview nowhere <nobody>
TODO Panel nowhere <nobody>
TODO Icon Nowhere <[email protected]>
TODO calendar kde-workspace[frameworks-scratch] <[email protected]>
TODO Pager (already in QML) blocked on libkactivities <[email protected]>

DataEngines

Status Name Source Developer
DONE tasks kde-workspace[frameworks-scratch] <[email protected]>
DONE time kde-workspace[frameworks-scratch] <[email protected]>
DONE applicationjobs kde-workspace[frameworks-scratch] <[email protected]>
DONE apps kde-workspace[frameworks-scratch] <[email protected]>
DONE soliddevice kde-workspace[frameworks-scratch] <[email protected]>
DONE statusnotifieritem kde-workspace[frameworks-scratch] <[email protected]>
DONE devicenotifications kde-workspace[frameworks-scratch] <[email protected]>
DONE hotplug kde-workspace[frameworks-scratch] <[email protected]>
DONE keystate kde-workspace[frameworks-scratch] <[email protected]>
DONE notifications kde-workspace[frameworks-scratch] <[email protected]>
DONE places kde-workspace[frameworks-scratch] <[email protected]>
DONE powermanagement kde-workspace[frameworks-scratch] <[email protected]>
TODO calendar Nowhere <[email protected]>
TODO activities Nowhere <[email protected]>


Planned for later

The following lists contain add-ons which are not in the default config.

Plasmoids

Status Name Source Developer
DONE analog-clock Nowhere <[email protected]>


DONE Trash heenamahour/gsoc <[email protected]>
DONE Window List heenamahour/gsoc <[email protected]>


IN PROGRESS Comic Strip "rshah/comicqml" branch of kdeplasma-addons <[email protected] >
IN PROGRESS Calculator kdeplasma-addons (Merged) <[email protected]>
IN PROGRESS Konsole session kdeplasma-addons (Merged) <[email protected]>
IN PROGRESS Konqueror session kdeplasma-addons (Merged) <[email protected]>
IN PROGRESS Now Playing kdeplasma-addons (Merged) <[email protected]>
IN PROGRESS Activities kdeworkspace master
IN PROGRESS Weather kdeplasma-addons master <[email protected]>
IN PROGRESS Weatherstation kdeplasma-addons master <[email protected]>


IN PROGRESS Lock Logout "plasma/viranch/powermanagementservices" branch of kde-workspace <[email protected]>
IN PROGRESS Kate session "plasma/sreich/declarative-kate-applet" branch of kate <[email protected]>


IN PROGRESS Quick Launch "plasma/iwesp/quicklaunch" branch of kde-workspace <[email protected]>
IN PROGRESS Fifteen Puzzle Nowhere <[email protected]>
IN PROGRESS KGet Widget qmlwidget branch of KGet <[email protected]>
IN PROGRESS Timer bettio/qml-gsoc-timer <[email protected]>
IN PROGRESS News master branch of declarative-plasmoids repository <[email protected]>
IN PROGRESS Microblog master branch of declarative-plasmoids repository <[email protected]>
IN PROGRESS Analog Clock plasma/viranch/analogclock <[email protected]>
IN PROGRESS Dictionary master branch of declarative-plasmoids repository <[email protected]>
IN PROGRESS RSS Now master branch of declarative-plasmoids <[email protected]>
IN PROGRESS System Monitor plasma/sreich/qml2-system-monitors, (pre-5.0). Uses canvas, needs scaling, migration move to an applet, and sensor binding mostly Reich <Shaun Reich>
TODO Activity Bar (Already in QML) blocked on libkactivities <[email protected]>
TODO lock_logout Nowhere <[email protected]>
TODO panelspacer Nowhere <[email protected]>
TODO quicklaunch Nowhere <[email protected]>
TODO showActivityManager Nowhere <[email protected]>
TODO Binary Clock Nowhere <[email protected]>
TODO Blackboard Nowhere <[email protected]>
TODO Bookmarks Nowhere <[email protected]>
TODO Bouncy Ball KILL IT <[email protected]>
TODO Bubblemon Nowhere <[email protected]>
TODO Character Selector Nowhere <[email protected]>
TODO Colour Picker Nowhere <[email protected]>
TODO Community Nowhere <[email protected]>
TODO CPU Monitor see System Monitors <[email protected]>
TODO Hardware Info Nowhere <[email protected]>
TODO Picture Frame Nowhere <nobody>
TODO Panel Spacer Nowhere <[email protected]>
TODO webbrowser Nowhere <[email protected]>
TODO Web Slice Nowhere <[email protected]>
TODO Notes Nowhere <[email protected]>
TODO Keyboard Nowhere <[email protected]>
TODO Keyboard Layout Nowhere <[email protected]>
TODO World Clock Nowhere <[email protected]>


TODO Sal Containment nowhere <nobody>
TODO Newspaper Containment nowhere <nobody>
TODO Grouping desktop Containment nowhere <nobody>

DataEngines

Status Name Source Developer
DONE dict kde-workspace[frameworks-scratch] <[email protected]>
DONE executable kde-workspace[frameworks-scratch] <[email protected]>
DONE filebrowser kde-workspace[frameworks-scratch] <[email protected]>
TODO favicons Nowhere <[email protected]>
TODO geolocation Nowhere <[email protected]>
TODO metadata Nowhere <[email protected]>
TODO mouse Nowhere <[email protected]>
TODO mpris2 Nowhere <[email protected]>
TODO network Nowhere <[email protected]>
TODO nowplaying Nowhere <[email protected]>
TODO rss Nowhere <[email protected]>
TODO share Nowhere <[email protected]>
TODO systemmonitor Nowhere <[email protected]>
TODO weather Nowhere <[email protected]>
TODO searchlaunch Nowhere <[email protected]>
TODO akonadi Nowhere <[email protected]>