We recently had our Plasma release cycle planning meeting, and here is our list of goals for central Plasma technologies in 4.4 (in no particular order):
- Improve kiosk based lock down and deployment management: We are communicating with some large deployments in Europe about the process of migrating from KDE 3 to KDE 4 and how we can make KDE 4's desktop shell an even better experience than Kicker and KDesktop provided. We've started a wiki page here that we are working on with these downstream users. Expect a lot more to find its way there over the next few weeks and months as we continue to work out the needs and use cases with them.
- Plasma Netbook: A Plasma shell optimized for the netbook use case of a small-ish screen, hardware accelerated video and online usage. It features no taskbar (relying on the "display windows" desktop effect instead), an integrated panel and window title bar, Plasma widgets and a full screen search and launch interface. Hopefully we'll be able to add a media interface as well.
- Media Center Components: A first release of media center components for browsing, collecting and playing media in a full screen Plasma containment. This will not replace Amarok, Dragon, Kaffeine, etc. It's designed for casual full screen usage and will also sport Plasma widget support. Oooh! Full screen widgets! :) Essentially, we believe that a basic media center experience should be easy for the home user to get at, which means it needs to be integrated with the desktop shell and be readily available with it. As a first release, it won't have tons of bells and whistles (something we hope to eventually get by integrating this work with existing media center projects in the future) but it should get us on the right road.
- Remote Plasma: Send your data or your widgets to another computer or device or receive Plasma components on your device. No-configuration local area announcement of services over UPnP, working with all Plasma components without modification, integrated authentication and access control and extensible delivery mechanisms will allow us to share components around a table (e.g. at a meeting), control other systems (e.g. a media center) in the house or even run Plasma services on headless systems on the network. No other widget system out there has this, and even the web hasn't yet achieved this level of relocatability.
- Pluggable Containment Actions: Want to have Control+Alt+MiddleClick open up a list of running windows? Scroll wheel on a panel skip through desktops? This plugin based system for defining contextual actions for containments opens up all those possibilities as well as the more mundane but much wanted consistency between containments. Now Folder View Activities can have all the same options as the default Desktop Activity without any duplication of code. Best of all: you get the final say by selecting the plugins and the activation sequence for them if you wish in the integrated control panel.
- Widget Explorer: A more "Plasma" widget explorer that integrates better with the panel controller, looks hotter and is generally just more usable.
- Improved KWin Integration: We've been working on this in 4.3, and we'll try and take it to new levels with the KWin developers. This includes moving some of the effect inside of Plasma into KWin for greater performance, taking better advantage of some of KWin's effects and seeing more Plasma based theming options for KWin (such as window decorations). A good portion of this work will be done by the KWin developers, but I figure it makes sense on this list as well. :)
- Social Desktop and Geolocation Improvements: Building on our start with the Social Desktop features in Plasma in KDE 4.3, we will be adding more features to the existing widgets, adding new widgets where needed and using geolocation in more of our components. We are also looking at ways to improve the geolocation DataEngine itself, though no concrete for 4.4 plans have been committed to yet.
- Plasmate: The 0.1 release of the Plasmoid and DataEngine creator will follow with the KDE 4.4 release. Transparent revision control, live previews and minimal-clicks-to-get-to-work workflow will lower the bar considerably to making scripted Plasma components.
- KUIServer Resurection: KUIServer has received a facelift and an internal resurrection. Now jobs can talk to KUIServer and it updates Plasma for its job notifications. This means applications like Dolphin can now also consume that data without Plasma getting in they way and if Plasma should crash the jobs will still be there on restart.
- Notification Improvements: Notification summaries, queueing and logging, making the notifications area more robust against applications flooding it and more useful by keeping the latest information at your fingertips. We're also exploring the best way to show only the new stuff when it arrives, while letting you click through to the older stuff, too.
- Kinetic: Plasma in KDE 4.4 will be the first release to start using the new Qt animation and state machine framework.
- Plasma Desktop D-Bus Access: A full D-Bus service exposing the widgets, containments and more in your currently running Plasma desktop session.
- More KRunner: In 4.3 KRunner received a lot of interface, performance and stability love. Now we need to keep the runners coming. I started a Kopete chat runner the other day based on a request received on identi.ca.
- Plasmoid Updates: Working with the KNewStuff developers, we want to provide an easy way to check for updates to the Plasmoids you installed over the network as well as check the installed ones for integrity.
- Notification Item Goes Prime Time: With the new D-Bus based system tray protocol in place and under real-world usage in 4.3, we will be porting as many apps as we can get our hands on to it. A formal specification is being written which will be submitted for consideration at freedesktop.org and we hope to move the KNotificationItem class into libkdeui. Next to the ability to put Plasmoids in the system tray (and possibly elsewhere like the quick launcher), this is the single most exciting thing that's happened to the system tray since I've been following KDE. Finally we have a modern system tray / notification area with the ability to have multiple views on the same entries, have non-graphical representations of them, separate the entries into different groups in different widgets, integrate them with the taskbar, react to the internal state of the entries (e.g. for autohide) and theme them properly for the host desktop shell (icon theming, sizing, etc).
- New Configuration Dialogs: A revamp of the existing activity and wallpaper configuration as well as Plasma global settings is planned. Beauty and usability are the goals.
That probably seems like a lot, but most of the above items have already had significant work done on them and are currently in active development. We do have more plans, such as improving the Lion Mail Plasmoid and working on improved Akonadi integration, but the above sums up the big changes coming to the core components. The usual incremental improvements in other Plasmoids, performance and stability work can also be expected. (They just make crappy line items in a "OMG! What colour poniez are they making?!" list.)
There's so much more that's possible, too: a dock PanelContainment, improved pager usability, getting kdewebkit to a place that we can replace our use of QWebPage with KWebPage for Plasma::WebContent, a Plasmoid based on the Kickoff internals that shows a menu of just a certain sub-menu in the application menu hierarchy, .... there's lots of cool stuff just waiting for eager hands.
Maybe those hands belong to you? If so, come find us on irc.freenode.net in #plasma or on the plasma-devel at kde dot org mailing list. Either way, enjoy riding KDE 4.3 while we work away on KDE 4.4. :)