Skip to content

KDE compositing in openSUSE11.1

Monday, 10 November 2008  |  lubos lunak


As you might have noticed, KDE 4.1.3 has been released, codename "Change" (in line with other C- codenames recently, as a kind of a joke on all those people who fail to see that still writing comments with overuse of K after 10 years of KDE's existence can only be a sign of brain damage). Not many changes in KWin there though, the changelog part for KWin has just one change worth mentioning. But that is not the case for users of the openSUSE KDE:KDE4:Factory:Desktop packages, which are the packages that will be also used for openSUSE 11.1. This is because they include a special KWin branch, which contains both backports of various new features from other KWin developers from SVN trunk (Lucas' blog keeps track of many of those) that cannot be backported to the 4.1 branch by KDE rules but should be stable and safe enough, and new features developed specially for the needs of openSUSE11.1/SLED11.

The most prominent of these is probably the fact that compositing is going to be enabled by default if possible - that is, if you install openSUSE 11.1 on a system capable of decent compositing without explicit installation of drivers, you will get desktop effects out of the box. And since decent compositing should not include the infamous cases of getting a nice white screen or detailed view of how things are painted one after another, KWin has a couple of various clever or crude tricks that should ensure it works. KWin compared to Compiz has the design advantage that it can handle gracefully working without compositing, and so far it seems these checks do their job pretty well (and if not, you should complain, that is what beta releases are for). Selecting where to enable compositing by default was also based on the list of systems where people have reported success with running composited KWin.

KWin desktop cube Another, well, significant feature is the desktop cube. Let me get this one straight - there are only two things I find good about the cube:
  1. It gives users who have problems grasping the concept of virtual desktop a nice way to imagine how it works (except that in reality it does not work that way at all, but who cares if it works for the user).
  2. The cube has somehow become the symbol of desktop effects and so KWin simply has to have it to be taken seriously by some people (and of course it makes it possible to enable it for 5 minutes to impress people stuck with MS Windows). Guess why I ended up including the cube image inline as the only one.
What I especially don't think the cube is very good for is to be actually used - I always get motion sickness when I have to use it for a short while and I don't think it makes it easy to find things either (and that was just with the default 4 desktops, what would be with my usual 12 or if I enabled options like the transparent cube). Nevertheless there are enough people who find it useful, so why should I be stopping Martin from implementing it, right? So we now have the cube, hurray (or something), not enabled by default, but that is easily changed in the configuration.

The PresentWindows effect includes backport of a more natural layout of showing all the windows and it can be also configured as the effect to be used for the Alt+Tab functionality. The updated DesktopGrid has not been included due to some minor problems with it, and the 4.1 version has distortion problems with non-square desktop layout, so we have default number of desktops now again 4 like in upstream KDE (I've never understood what was the point of having only two, not a big difference to having just one). For people with a different layout the effect at least tries to keep the presentation as square as possible. Options to select which effect is to be used for Alt+Tab or desktop changes are now two simple comboboxes, with a third one globally affecting all animation speeds for those who find animations acceptable only if they are fast.

As for technical backports, there are several features worth mentioning too. I have backported fullscreen window unredirecting, new handling of idling, and the 'Keep window thumbnails' handling, which when set to 'Only for shown windows' makes desktop switching as fast as with Compiz (since it technically makes it handle the window contents the same). To my knowledge KWin's performance should roughly match that of Compiz and if it does noticeably worse on some setups that should be usually a case of the drivers being bad.

There seem to be already a number of happy users of KWin's compositing, so, well, I hope it will work well for you too. Maybe you will not even notice at first ;).

Last item is not about KWin but rather Compiz - the option to select the window manager to be used with KDE is in the more logical Default applications module in Systemsettings and, when Compiz is selected, the Configure button will launch simple-ccsm-kde, which is simple-ccsm equivalent that does not drag in all the g* dependencies. For people who still have a reason to use Compiz instead of KWin.