Some not so wobbly news from wobblyland

Long time no post on what has changed in KWin lately. So I’m going to show you some new features.

There has been some work going on to improve the tabbox (alt+tab) when no effect is used. Andreas Pakulat added an outline for the currently selected window like it was in KDE 3 time. Very nice and usefuel – thanks a lot. The tabbox has received some face lifting and uses the Plasma style. On that part I want to thank Nuno for his great help on making the whole thing nice. Adding some pixels here and there – I could not have done it.

Well nothing is as good as a screenshot:

Plasma styled tabbox with outline
Plasma styled tabbox with outline

But that’s not the only thing which has improved. Some might have noticed that they activated an effect but it just doesn’t work. This can have different reasons: you want to activate an OpenGL only effect and you are using XRender or the effect requires OpenGL shaders and your hardware or driver does not support shaders. To solve this problem the best solution would be to deactivate the not supported effects in the plugin selection, but that’s not possible as you can change the effects if compositing is suspended or deactivated. So testing if OpenGL is used does not work and we cannot deactivate the effects in the UI.

To give some feedback to the user a notification is shown when you change effects and you have selected a not supported effect. It just checks which effects are loaded and which effects are selected when you change your settings.

Notification for not supported effects
Notification for not supported effects

We also added a D-Bus method toggleCompositing to suspend/resume compositing. This is already used by PowerDevil when the option to disable Compositing is set. In that case another notification is shown, telling you the shortcut to resume compositing. So if you are the author of an application which you know performs badly with compositing (I have heard there are some drivers which don’t like you to play videos when compositing is enabled – should be solved with DRI2) you can automatically suspend compositing.

And last but not least there is a new on-screen-display which is shown when you change the desktop. It’s Plasma styled as well and looks very much like the pager. It highlights the new desktop and arrows from the old desktop to the new desktop are shown. Please don’t tell me that this is just a copy from Mac OS – of course it is inspired. But this one is better. Ever looked at the Mac OS spaces OSD? Does it look like the other parts of the workspace? No it doesn’t. Our OSD uses the workspace style, so it’s better integrated 🙂

This OSD replaces the old popup info. So you just have to check the “Show desktop name on change” option to receive this OSD. If you want to keep the old just name option: please leave a note. If there is need for it I will add an option to select between OSD and only desktop name.

Desktop change OSD
Desktop change OSD

And as an image can’t show the dynamic animations (Plasma has really great stuff for that) here’s the video (Link for planet reader):

14 Replies to “Some not so wobbly news from wobblyland”

  1. I am stunned. This looks so beautiful!

    I had expected such an explosion in Kwin development. You guys are doing an amazing job! Which desktop environment or operating system can keep up with you? 🙂

    I read somewhere that Nuno is looking for a job or sponsoring. I hope he will be rewarded for his great artwork and devotion to KDE.

  2. I keep meaning to hunt down the reason why kwin thinks my card doesn’t support the necessary shaders for some effects. Its a decent enough card so I’m not sure whether it really doesn’t support the shaders or whether it’s a communication problem. thanks for reminding me.

  3. @Rasi: it’s in Systemsettings -> Window Behaviour -> Window Behaviour -> first tab -> last checkbox

  4. Concerning telling the user which plugins don’t work … can’t you still deactivate them in the list when compositing is active? I think it’s nicer to know before hand that something is not available, instead of letting the user try and fail. I’m might completely missing something, but I can identify these cases:

    1. You have compositing disabled in Xorg or no compositing at all: you can’t modify effects anyway, thus no problem.
    2. Compositing is possible, and it’s enabled in Xorg, but disabled for Kwin (“Enable desktop effects” switch): same, can’t modify, no problem.
    3. Compositing in Kwin is enabled on startup, but temporarily disabled (Ctrl+F12): Here you can test what’s available on startup, and keep the information when it gets temporarily disabled. No problem here.

    This leaves two cases with problems:
    4. First, when you change the compositing type. Shouldn’t it be possible to tell beforehand whether a plugin supports a certain type i.e. whether it requirers OpenGL? The plugin description file could contain a list of supported types.

    5. The other: Compositing is possible, but in Kwin is disabled on startup, so you can’t test for shaders or the like before the user activates it. Still you could deactivate effects depending on the selected compositing type (see 4.). Just not on special GL features. Once activated you can do that as well. And solely on first activation of compositing show a dialog of failed effects. And only for effects which have actually been selected. So with a good default i.e. effects which require no special GL features, most users won’t ever see this dialog.

    This would give a smooth user experience in most cases IMHO.

  5. Wooh, this is great!

    Do you think the alt-tab popup (with no effect) could get the same animation as krunner when you switch items? Not sure, but I think it would look pretty good.

  6. @Psychotron: there are more cases. Example: you use XRender (many effects disabled), select OpenGL, now all effects should be selectable, you click apply and OpenGL fails returning to XRender, so you have effects that do not work any more.

    There are just too many possible ways. That’s why I decided on going for a passive notification.

    @Hans: could be possible, but I have not seen the code yet and I won’t have the time for it till hard freeze 🙁

  7. Is it possible to add an option to select the “plasma theme” for Kwin individually (I like a lot more Air, but those new pop-ups/OSD look better with Oxygen, and give more variety to the appearance, while still looking integrated),

  8. @Luis: no that is not possible as well as it’s not possible to select another theme for KRunner.

  9. You can change the KRunner theme using “Desktop Theme Details” on the advance tab. I guess it should be possible for Kwin too.

  10. IMO, the notification should also show possible reasons why activating the effects failed, to give the users a hint what they could do in order to make enabling the effects possible, or at least give them some information.

Comments are closed.