The developers behind the KDE project have officially released version 4.5 of the KDE Software Collection. The update brings some improvements to the environment's stability, performance, and functionality. The KWin window manager and Plasma desktop shell have both gained some particularly significant new features in this release.

The panel notification area in the Plasma shell has been overhauled with the aim of simplifying the manner in which notifications are presented. Notification bubbles for completed actions and ongoing operations are accessible through a single streamlined drop-down menu. It will show a count of the current notification bubbles and will display a busy indicator when there is a long-running operation in progress. You can use the notification area to control and monitor the progress of file operations and other similar activity.

The notification area also got a bit of a visual overhaul, with new monochrome icons that look better in the transparent panel. Although the new consolidated notification system is a nice functional improvement, the look and feel could still use some improvement. In the above screenshot, you can see a redundant progress bar with a slightly different time estimate, inconsistent spacing, and a number of other minor issues.

One of the key features of the Plasma shell is its support for Activities, custom arrangements of embedded plasmoids. The useful ability to switch between multiple plasmoid configurations has been available since the initial 4.0 release, but it has been cumbersome to use because it was only accessible through an eccentric zooming user interface paradigm that has never worked reliably. In version 4.5, the developers have completely abandoned the zooming model and have delivered a simplified activity switcher that is significantly easier to use.

Users can invoke the new activity switcher by selecting the "Activities" item from the Plasma desktop menu. The switcher will display all of your Plasma activities in a row along the bottom of the screen. You can switch to a different activity simply by clicking one of the items displayed in the row. Each activity in the list has a small stop button that the user can click to pause and resume the plasmoids that are embedded within the activity. When an activity is paused, an additional icon will appear that allows the user to close the activity. The activity strip also has a button that the user can click to launch a new activity.

Although the abandoned zooming concept was intriguing, its value was undermined by its utter lack of predictability and robustness. The new activity system is a lot less ambitious, but it works better in practice and is much more intuitive.

In KDE SC 4.5, the KWin window manager has gained support for an optional tiling mode. When tiling is enabled, windows on the screen will be organized into a dynamic non-overlapping grid. The grid will automatically adjust as new windows are opened and closed. Users can configure which windows are snapped into the grid and which ones will be able to float independently. The grid feature—which is modeled in imitation of lightweight tiling window managers such as Ion and Awesome—is a very good start, but the implementation still has some limitations that have to be addressed. It doesn't work properly in multihead configurations, for example.

Another nice addition to KWin's feature set in 4.5 is the ability to drag a window by clicking in any empty space. This feature is a real time saver because it spares the user from having to aim for the relatively small titlebar. It relies on some functionality that is specific to the Qt toolkit, however, so it will only work for native KDE applications.

The KDE application stack got some minor improvements in version 4.5. A new multiplayer Mahjong game called Kajongg was added to the KDE games collection. The Marble virtual globe and navigation program gained support for routing via integration of the OpenRouteService.

The addition of Kajongg is a noteworthy milestone because it is the first application in the KDE Software Collection that is coded entirely with the Python programming language. The KDE developer community has historically had a very C++-centric culture, but its enthusiasm for dynamic programming languages is growing. The Plasma developers, for example, are increasingly promoting JavaScript because it lowers the barriers to entry for Plasma widget development. We have also recently noticed some impressive examples that demonstrate how Ruby can be used to extend the functionality of the KDE platform and individual applications.

The best way to get a new version of KDE is to wait until your distro includes it in a stable release. Users who want to get an early look can compile the KDE SC 4.5 source code, which is available for download from the project's Web site. There are also experimental binary packages available for several different Linux distributions. I tested KDE SC 4.5 on Kubuntu 10.04 using the Kubuntu PPA. For additional details about the release, you can refer to the official announcement.