Shell blur
Blur behind transparent shell elements has become commonplace on modern operating systems, such as Ubuntu's Unity Dash, Windows' window manager, and OS X's Launchpad. We should aim to provide similar visual polish with Pantheon Shell.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Medium
- Drafter:
- None
- Direction:
- Approved
- Assignee:
- None
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Needs Infrastructure
- Milestone target:
- None
- Started by
- Sergey "Shnatsel" Davidoff
- Completed by
- Danielle Foré
Related branches
Related bugs
Sprints
Whiteboard
Traditionally this has been problematic on Linux due to the shortcomings of compositing managers such as Compiz. However, using the latest version of Compiz in Oneiric, I am able to successfully implement this with the Blur Windows plugin, using the Mipmap Blur Filter. Setting the "Alpha blur windows" setting to "class=Slingshot | class=Plank | class=Wingpanel" and the "Mipmap LOD" to "3.3000" produces some beautiful results with little to no noticable effect, even on an underpowered machine with an integrated graphics card, like my Cr-48. Video coming right up. ~cassidyjames
Video of it in action on my underpowered Cr-48: http://
The problem about mipmap blur in Compiz 0.8.x is that it generates mipmaps for every single window instead of only those which match the filter. This made my machine LAG HORRIBLY. I hope they defeated it in 0.9.x
I managed to get decent performance using Gaussian blur filter, but not decent looks, and the stability is also questioned (it crashes on my Q33 if I set radius to 5 or more). ~shnatsel
YES! I can confirm that mipmap blur works just fine in Oneiric!
Now we just need to decide what to blur. Like tooltips, dock, panel, etc. ~shnatsel
Okay, bad news. I turned blur off after using it all day yesterday, and Compiz is a lot snappier. It seems that blur doesn't slow down normal tasks, but it does noticeably slow Compiz rendering, at least on my computer. I'm thinking we need to leave it out until it works better or we come up with a better solution. ~cassidyjames
Blur did slow down effects like 3D windows on deformed cube on my laptop, but it did not make a huge difference. What exactly do you mean by "compiz rendering"? ~shnatsel
Hmm, I've installed 3.0 kernel and the blur works fine with Compiz 0.8.x, which means that that was not an improvement of Compiz, but an improvement of video drivers. We probably should make it auto-activated depending on the driver in use; I have no idea how will it perform on e.g. Nouveau. ~shnatsel
Alternatively, we can perform a performance benchmark on first startup and choose the desktop effects accordingly. Looks like we'll need it for stuff like zramswap anyway. ~shnatsel
An important note to keep in mind: mipmap blur requires generating mipmaps for all windows, not only the matched ones. So, even if the matched windows are never shown, the performance is still decreased. ~shnatsel
I am currently using these settings with Nouveau driver on a 2 year old 512mb video card on Oneiric and things are working well. ~codygarver
let's implement this in our compiz defaults and then we can test up until release --DanRabbit
Postponing because of migration to Gala --shnatsel
In my case, I think it will be a good feature to add control about desktop effect. IMO, many OS (including OSX, Windows) missed one important point : accessibility.
Modal windows, System messages have to be easy to read and focused. I 've done one test with Gimp :
https:/
With that screen, that message will be seen by the user, because everything else is masked (I agree that it must be very important, like logoff windows, system messages).
~Nikos
I know this thread is old but blur is still very important for a modern OS. Gala is based on mutter and mutter already has a quasi-complete extension that has blur implemented.
https:/
Here's another one that's on the extension store:
https:/
We could reverse-engineer this thing to work with gala and translucency.
Shell blur can be an opt-in sort of setting. People who don't mind a slight decrease in performance can choose to enable it.
~Dorukhan
Work Items
Dependency tree
* Blueprints in grey have been implemented.