This is for the people who want unlimited wallpapers without save/restore backups in each new installation. This is for the people who want some animation in their backgrounds. This is for the people who want interactive backgrounds and not just static images. This is for the network admins who recognize action-reaction as client-server law ;)
The idea is simple. Let’s add some HTML5 for rendering GNOME’s background. The way to do this is to add a new box in Shell’s background container and load WebKit. I asked Jasper (gShell dev) if we could load WebKit in a Clutter Actor (that would make it pretty easy), but the answer was no.
So I did something very stupid, just for fun. I made a new GnomeSession that, when it starts, runs a Node server and launches a frameless WebKit window. Then we tell Window Manager to keep that window full screen and always on the bottom, and we are almost done.
The problem now is that when we enter in Overview Mode, Shell reveals our background as a thumbnail. To prevent this, we tell Shell to hide this particular actor. The window is actually there, but we can’t see it.
I run Server and Client on the same machine, but there’s no difference if I run it remotely. The really cool thing is that our backgrounds actually “runs” online, but we have full access to our system with HTML5. This means we can do things like running an HTML file manager in our online backgroud.
I tried nearly 20 times to make a screencast, but either Shell was crashing or 3JS animations were freezing the CPU. It doesn’t really matter… this is nothing but an idea. ;)
Happy new year!