Projects/Plasma/Tasks

From KDE TechBase
Warning
If you clear a task, please write "Completed" near it. If you are still working on it, please put your name. Percentage of the work done is accepted.


Tasks

If you want to claim a task, please put your name (or nickname, both is better) in brackets near the task you wish to claim. Please add it when you start working on it, and if you stop, please remove it, so we can know "who is working on what" and what tasks still needs to be started.

And, of course, this will avoid duplication of work. Thanks a lot! =)

Note
This is a roughly sorted list of tasks that popped out during the meeting. We probably need to categorize it better, like seeing which task is blocker for which other, setting priority, split between "research" and "coding" and things like that. Still sounds like a premature thing though.



KRunner

Major Bugs

None! =)

Runners

  • pull in options from kdesktop/minicli.cpp and merge into shell and app runners
  • Search Runner: use strigi (blocked by Xesam)
  • listen to async match updates (Interface:updateMatches())
  • runners, runners and more runners!

Interface

  • options slide drawer animation

Misc

Plasma

This is what we are focusing on implementing right now:

  • general libplasma
    • unit tests.
    • api documentation reviews
    • XML Config: add support for unsupported data types (these are documented in the API docu)
    • Applet needs a way to access resources for customization (think: clock faces)
    • Need to implement the math in Phase to update the intervals according to the CurveShape, ala QTimeLine (ask aseigo for more details if you find that cryptic ;)
  • Applets
    • application launcher interface
    • taskbar (Robert Knight; others welcome to help)
    • systray (Alexander Rodin; others welcome to help)
    • on mouse over, show a set of small buttons that allow for the following actions: close, configure, lock, information and move. aseigo has graphics for the buttons already. (manyoso)
    • add global settings config page, if it exists in the Package (which means adding a pair of entries in packages.cpp for globalconfigui and globalconfigxml), alongside the per-applet ones
  • plasmagik
    • unit tests
    • resuscitate trunk/playground/base/plasma/plasmagik (adjam, ruphy)
  • bindings
    • QtScript bindings are being worked on (rdale)
  • RootWidget (the "desktop")
    • Controls box: an expand-on-mouse-over widget that sits on top of the graphicsview and provides discoverable access to zooming, jumping, configuration, adding of elements, locking ...? Currently needs to pretty-fied and the more "techie" options removed (aseigo)
  • Corona (QGraphicsScene subclass)
    • Zooming: 3-level zooming needs to be supported. 100% == 1 item group at full zoom; 50% == all item groups visible with panning with each item replaced by a simple icon; 10% == all item groups visible without panning, each group replaced by a simple icon and items not painted at all
    • Respond to resolution changes
    • Ability to define default panel/desktop/applet layouts without modifying loadDefaultSetup code, e.g. with config files on disk.
  • Views
    • Implement configurable background painting. This can in part be ported from kdesktop for DesktopView.
    • Implement composite based translucency for panels
    • Create a dashboard view (full screen, always on top)
  • DataEngine
    • Configuration parameters for sources

We also have:

  • Implement Zack's physical equations for animations

Nice to have:

  • Implement python bindings of Plasma
  • Associate units with a data source's data?