Projects/Plasma/Tasks: Difference between revisions

From KDE TechBase
 
(70 intermediate revisions by 9 users not shown)
Line 1: Line 1:
{{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.}}
{{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 ==
== Tasks ==
Line 7: Line 9:
And, of course, this will avoid duplication of work. Thanks a lot! =)
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.}}
{{note|This is not meant to be a replacement for the feature list on the [[Schedules|release schedules pages]], but rather a place to record things that aren't there.}}




=== KRunner ===


=== KRunner ===
==== Major Bugs ====
None! =)


==== Runners ====
==== Runners ====
* pull in options from kdesktop/minicli.cpp and merge into shell and app runners
* runners, runners and more runners!
* ServiceRunner: better matching (case insensitivity, substring matching, performance, etc)
* CalculatorRunner: complete ('''Baris''')
* Search Runner: use strigi
* listen to async match updates (Interface:updateMatches())
* determine how to order runner plugins for searching; categorization?
* runners, runners and more runners! e.g. a kalkhi plugin...?


==== Interface ====
==== Interface ====
* abstract out the svg background part of Interface and have it subclass QDialog; then make screensaver/lock dialogs subclass that and therefore look a bit more sexy and consistent ('''Baris''')
* improve paging
* options slide drawer animation
* nicer user switcher


==== Misc ====
==== Misc ====
* install [[Development/Tutorials/D-Bus/Autostart_Services|D-Bus autoactivation service]]
* javascript bindings to runner.h


=== Plasma ===
=== 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)
** layout code improvements (HuntsMan)
** Applet needs a way to access resources for customization (think: clock faces)
** provide a way to mark an applet as needing configuration before usage (similar to how we do with failureToLaunch)
* '''Applets'''
** application launcher interface
** taskbar (robert knight; others welcome to help)
** systray


* '''plasmagik'''
* '''Documentation'''
** Basic classes are in (Package, PackageMetadata, Packager and PackageStructure)! =)
** design docs coverage (workspace/plasma/design/)
** unit tests
** Techbase tutorials for:
** resuscitate trunk/playground/base/plasma/plasmagik
*** Wallpaper plugins
*** Containments
*** DataEngine
*** Service
*** Theming
** website overhaul
* '''General libplasma'''
** more unit tests.


* '''bindings'''
* '''Plasma::Applet'''
** QtScript bindings are being worked on
** 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
** need to re-evaluate the place of KRoss in the all of this
** a way to access resources for customization (think: clock faces)
 
* '''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


* '''Corona''' (QGraphicsScene subclass)
* '''Corona''' (QGraphicsScene subclass)
** Item groups: a container to group items (mostly applets, really) and handle layouting and level of detail
** 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
** Saving and loading of layouts (Alexis)
** The concept of form factor needs to move out of Corona and into the item group class


* '''Views'''
* '''Views'''
** Currently there is DesktopView which is, somewhat obviously, the desktop view onto the Corona
** Implement configurable background painting. This can in part be ported from kdesktop for DesktopView. Should be plugin based.
** Create a panel view
** Create a dashboard view (full screen, always on top)


* '''Widgets''' [[../Widgets|Here is a page describing the nature of these widgets]]. Widgets still needed that aren't implemented yet are:
* '''Widgets''' [[../Widgets|Here is a page describing the nature of these widgets]]. Widgets still needed that aren't implemented yet are:
** Icon needs the icon hover feature to be finished
** [[/HTMLViewer|An html widget]]
** panner widget that shows N QGraphicsViewItems at a time in a fancy manner (asiraj)
** a "something just changed" widget that provides a bit of animated flash when something changes


* '''DataEngine'''
* '''DataEngine'''
** Configuration parameters for sources


 
* '''Applets'''
''We also have:''
** Welcome
* Implement Zack's physical equations for animations
*** offer quick access to a few starting points including: documentation, the online community, kde tips, configuration, etc.
 
*** each button should show a little help text when clicked along with some links/buttons that the user can click on to go somewhere.
''Nice to have:''
*** have an area on it that allows one to enter or create an openid account.
* Implement python bindings of Plasma
*** see [[Projects/Plasma/Welcome]] and [http://bddf.ca/~aseigo/welcometokde4.png this image]
** Timeline

Latest revision as of 20:59, 4 January 2010

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 not meant to be a replacement for the feature list on the release schedules pages, but rather a place to record things that aren't there.


KRunner

Runners

  • runners, runners and more runners!

Interface

  • improve paging
  • nicer user switcher

Misc

Plasma

  • Documentation
    • design docs coverage (workspace/plasma/design/)
    • Techbase tutorials for:
      • Wallpaper plugins
      • Containments
      • DataEngine
      • Service
      • Theming
    • website overhaul
  • General libplasma
    • more unit tests.
  • Plasma::Applet
    • 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
    • a way to access resources for customization (think: clock faces)
  • Corona (QGraphicsScene subclass)
  • Views
  • DataEngine
  • Applets
    • Welcome
      • offer quick access to a few starting points including: documentation, the online community, kde tips, configuration, etc.
      • each button should show a little help text when clicked along with some links/buttons that the user can click on to go somewhere.
      • have an area on it that allows one to enter or create an openid account.
      • see Projects/Plasma/Welcome and this image
    • Timeline