Plasma/Active/Development/Tasks

From KDE Community Wiki
Revision as of 15:59, 8 September 2011 by Notmart (talk | contribs) (→‎SLC)

Contributing

If you would like to support and become part of the Plasma Active team, you can use the following list of open tasks as inspiration. Please pick one of these tasks, for questions, you can always get in touch with us.

Packaging & Deployment

openSUSE

  • profile and optimize boot process (bootchart)
  • clean up startup / login process
  • create clean setup to start reviewing applications to offer
  • create separate artwork package (kdebase4-workspace-branding-plasmaactive)

variables to set the desktop shell type

  • export env vars from news-tablet.desktop in declarative widgets package to global session
  • Marble to go

Meego Packaging

  • create installer image
  • consolidate packages
  • fix up defaults

Hacking

Polish & Testing Needed

  • Add an applications category to the Activity's Add dialog
  • Launcher: clearing of tag cloud items with Show Everything; button needs alignment fixes, should clear search line too
  • Applets should not be draggable when inside the Contour boxes

Priority 1

Add Widgets

  • Harmonize "add widgets" with "add apps" (from Activity Add Dialog): now they look and behave the same: moving the add resources dialog in the add widgets one could still be needed, possible for PA2

Contour Pages

  • Hide config button for widgets with no configuration (or always make the button active for access to, e.g., share)
  • don't load any mouse button plugin

Default Configuration

  • KWallet configuation -> passwordless and no questions for access

Network Management Plasmoid

  • Check size hint of networking Plasmoid so that it doesn't shrink so small
  • kill the notifications from network connecting

Notifications Plasmoid

  • Remove single-line of text on new notifications

On Screen Keyboard

  • Add arrow keys to the tablet layout

Launcher

  • Sort applications by alpha

Priority 2

Activity Switcher

  • Show a loading animation when switching between activities (currently no feedback given)

Add Widgets

  • Close keyboard if opened due to focussing in on filter bar

Contour Pages

  • Custom titles for widgets, and a way for applets to set custom titles

Panel

  • Make status icons all the same width (and big enough to hit without too much pain): should be better now
  • Put application icons after status icons

Default Configuration

  • Diable Nepomuk Backup Sync

Unscheduled

Panel

  • hardcoded positions of containments (panel containment)
  • hardcoded positions of slc and clock (systray)

KWin

  • Screensaver/locker -> must be above all items and no password request
  • Unlock should live in kwin, a top-level windowthat shows some draggable item to unlock (a proof-of-concept exists already on start up, but that needs to move out of the shell)

Javascript Setup

  • Ability to load initial widgets positions with a Javascript (ala Plasma Desktop Scripting)

On Screen Keyboard

  • KWin virtual keyboard awareness (always keep on everything else, e.g.)
  • Copy/paste of text?
  • Add arrow keys to the tablet layout
  • Characters for more locales (e.g. German, French, etc)
  • Gtk+ IM plugin to trigger it
  • Multi-byte input
  • Rewrite in QML
  • Ensure that line edit does not get obscured by keyboard (mitigated now by being able to manually move it)

Launcher

  • Show most used / favorites as first line on first page

MeeGo Support

  • Connman backend for network management stack needed (either kded module or Plasma::DataEngine): quick and dirty applet now in place, will have to be replaced in PA2

Akonadi Qt-Mobility integration

For optimal Meego-compatibility a bridge between Akonadi and Qt-Mobility is required. This essentially means three sub-tasks:

  • The Contact Manager Engine provides an implementation of QContactManagerEngine as a backend for The QtContacts framework.
  • The Organizer Manager Engine provides an implementation of QOrganizerManagerEngine as a backend for The QtOrganizer framework.
  • The Messaging Integration in Qt-Mobility is slighly more complicated than contact or organizer item storage since the QMF framework is not pluggable. There is no way for storing messages in Akonadi without patching Qt-Mobility itself. It is unclear whether this is worth the effort at all.

Unsorted

SLC

  • Better artwork: connect icon is very odd
  • Not matter what is touched, Connect is always shown: probable touch screen bug: the touch event arrives always in the same coordinates unless a connected usb mouse is moved-> actually old qgraphicsview bug: occurs also in the desktop taskbar group menus, partially fixed
  • Bigger target invoking popup, and implement dragable
  • Show title of URI to be operated on in the context menu

Window Management

  • OpenGL ES on MeeGO
  • Focus to docks
  • Screen edge handling

Application workflow

  • Not obvious where apps are
  • Visual feedback between time when activity is selected and when the activity appears (so we know something is actually happening)

Window Strip

  • Window sorting
    • find solution to get at methods Martin added to kdelibs/*/kworkspace MRU
    • Put new windows after the current window
    • Check out how Harmatan Keyboard works
  • Show windows from current activity only
  • Sticky windows and moving windows across activities (SLC?)

Active Browser

  • search in page
  • save-as menus (e.g. for images)
  • "back" repositions page to last viewed position
  • plugin support -> 100% depends from qtwebkit i.e. flash tries to work, but doesn't really ;)
  • display ssl status
  • accepting non-verifiable SSL certs
  • connect downloaded files to the activity (nepomuk bug)

Image viewer

  • nicer ui
  • possibility to browse sd cards/download/upload images
  • search ui
  • albums?

Multimedia

  • Create multimedia activity
  • Good touch volume applet
  • Mediaplayer (minitube? bangarang? tomahawk? Plasma Mediacenter components?)
  • Webcam (kamoso?)

Social Networks

  • touch-friendly configuration for PIM (email, contacts, events.)
  • touch-friendly setup of Facebook via Akonadi
  • touch-friendly setup of Google via Akonadi
  • Akonadi model for QML plasmoids
  • Plasma QML widgets for
    • Contacts
    • Messages
    • Events

Workspace

  • Dynamic switching of Plasma workspace types, eg from the display manager, or due to hardware events such as docking?

KDM

  • Touch friendly login screen for eg touchscreen all-in-one PCs to use (low priority; we have auto-login)

Tools

  • Make Plasmate release-ready
    • Improve editor for QML
    • Implement scripting console
    • Fix sizing problems in previewer

Artwork

  • Improve Plasma theme
  • Plasma Active logo
  • Make Contour logo play well with Active logo
  • Wallpaper
  • Boot and Contour start QML Splash screen
  • Sounds are jarring for a tablet; new sound theme needed

Documentation

  • Improve QML Plasma docs
  • Improve installation docs
  • Create user docs (pending UI freeze)

Support and Testing

  • Help others with getting Plasma Active runnning on #active and the mailing list
  • Test Plasma Active on more hardware, find solutions for problems encountered, document them

Goals and Larger Ideas for PA2

  • Geolocation
    • Document and complete API
    • Use geolocation in more widgets
    • Cache geolocation
  • libplasma2 & QSceneGraph port
  • test GLES backend for kwin
  • DBusmenu implementation in QML
  • KToolBar replacement in QML (using a KActionCollection)
  • KXmlGui actions access in QML
  • KConfig integration with ownCloud
  • Finish porting all KDE applications to the mobile profile (mostly removing deprecated calls)