Projects/Plasma/Tasks: Difference between revisions

From KDE TechBase
Line 21: Line 21:
==== Interface ====
==== Interface ====
* options slide drawer animation
* options slide drawer animation
* the icon list needs to be turned into a horizontal scrolling procession (Ryan Bitanga)
* fix/improve paging
* options area needs to be cleaned up (it doesn't resize the window properly afterwards, it needs a nice background)
* options area needs to be cleaned up (it doesn't resize the window properly afterwards, it needs a nice background)
* single runner mode (e.g. "only use this runner for the current query")
* fixed query mode (e.g. "show krunner, but with this query and don't let the user change it")
* nicer user switcher


==== Misc ====
==== Misc ====
* install [[Development/Tutorials/D-Bus/Autostart_Services|D-Bus autoactivation service]]
* install [[Development/Tutorials/D-Bus/Autostart_Services|D-Bus autoactivation service]]
* QtScript bindings to AbstractRunner


=== Plasma ===


 
* '''Documentation'''
=== Plasma ===
** design docs coverage (workspace/plasma/design/)
''This is what we are focusing on implementing right now:''
** Techbase tutorials for:
* '''general libplasma'''
*** Applet in C++
*** Applet in ECMA Script
*** Wallpaper plugins
*** Containments
*** DataEngine
*** Service
*** Theming
** website overhaul
* '''General libplasma'''
** unit tests. (Bertjan Broeksema, bbroeksema)
** unit tests. (Bertjan Broeksema, bbroeksema)
** api documentation reviews
** api documentation reviews
** 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 ;)
** 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'''
* '''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
** 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
** Allow selecting of multiple icons by dragging an area around them. (cblauvelt)
** a way to access resources for customization (think: clock faces)
** Have a sane layout manager for icons on the desktop. (cblauvelt)
 
* '''systray'''
** ability to hide icons would be useful
 
* '''Taskbar'''
** Taskmanager needs a lot of cleanup as explained [http://mail.kde.org/pipermail/panel-devel/2007-December/003775.html on the mailing list]
 
* '''Panel'''
** most extragear and playground applets misbehave in the panel
** UI for panel config
*** resizing and moving
** adding multiple panels
 
* '''Welcome Applet'''
** 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 [http://bddf.ca/~aseigo/welcometokde4.png this image]
 
* '''Folder View'''
** an applet that displays the contents of a folder
** if it was also a containment that could be used as a desktop, even better
 
* '''Clocks'''
** clocks share a lot of duplicate code, so it would be good for them to share what they can, like common configuration UI
** a graphical timezone selector would be awesome
** show other timezones in a tooltip like in kde3
 
* '''plasmagik'''
** unit tests
** <div style="color: green">resuscitate trunk/playground/base/plasma/plasmagik (adjam, ruphy)</div>


* '''Corona''' (QGraphicsScene subclass)
* '''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
** 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
*** need zoomed-out UI for creating containments
** Ability to define default panel/desktop/applet layouts without modifying loadDefaultSetup code, e.g. with config files on disk.
*** provide a way to define a default config to be read in at start up. this could be as easy as looking for a particularly named file, e.g. plasma-appletsrc-defaults or as "tricksy" (though not much more so) as having this kept in a global config file (e.g. [General] group, key DefaultAppletConfig) ...
*** this needs to be done in the application and not libplasma as this will be specific to the application. add a Corona::setConfigFile would also be handy, as loadApplets sets the config file name, which wouldn't be desirable in this case.
**put the pager on the panel by default


* '''Views'''
* '''Views'''


* '''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:
** [[/HTMLViewer|An html widget]]: 4.1
** panner widget that shows N QGraphicsViewItems at a time in a fancy manner
** panner widget that shows N QGraphicsViewItems at a time in a fancy manner (asiraj)
** Ability to setup icons background on or off (maybe in desktop configure).


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


''We also have:''
* '''Applets'''
* Implement Zack's physical equations for animations
** 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 [http://bddf.ca/~aseigo/welcometokde4.png this image]
* '''systray'''
** ability to hide icons
** Timeline
** '''Clocks'''
*** show other timezones in a tooltip like in kde3


''Nice to have:''
* '''plasmagik'''
* Associate units with a data source's data?
** unit tests
** Package* class review

Revision as of 18:26, 31 July 2008

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

Runners

  • pull in options from kdesktop/minicli.cpp and merge into shell and app runners
  • runners, runners and more runners!
  • action/verb support

Interface

  • options slide drawer animation
  • fix/improve paging
  • options area needs to be cleaned up (it doesn't resize the window properly afterwards, it needs a nice background)
  • single runner mode (e.g. "only use this runner for the current query")
  • fixed query mode (e.g. "show krunner, but with this query and don't let the user change it")
  • nicer user switcher

Misc

Plasma

  • Documentation
    • design docs coverage (workspace/plasma/design/)
    • Techbase tutorials for:
      • Applet in C++
      • Applet in ECMA Script
      • Wallpaper plugins
      • Containments
      • DataEngine
      • Service
      • Theming
    • website overhaul
  • General libplasma
    • unit tests. (Bertjan Broeksema, bbroeksema)
    • api documentation reviews
    • 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 ;)
  • 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)
    • 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
  • Views
  • DataEngine
    • Configuration parameters for sources
  • 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
  • systray
    • ability to hide icons
    • Timeline
    • Clocks
      • show other timezones in a tooltip like in kde3
  • plasmagik
    • unit tests
    • Package* class review