Glow effect for Launcher icons

When the mouse enters the icon we increase brightness.
Don't show new windows for minimize_windows

This prevents new windows from being mapped when all windows are
minimized.

Signed-off-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Edited-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Toggle windows

Minimize or restore windows depending on the previous state.
This method is handy for QML because it can be bound to a shortcut with
a oneliner.
Allow wrapping interface functions without "wl_client*,wl_resource*"

Signed-off-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Edited-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Background cross fade

Make cross fade work.
Unload the wallpaper we are not currently showing

We load a couple of renderers to do a nice cross-fade when settings are
changed but we really don't want to keep loading a wallpaper for the
second renderer when it's hidden.
Wallpaper fill mode

Handle different fill modes.
We change a little bit the logic behind renderers swap: if background
type is still set to wallpaper and only fill mode changes we want to
avoid the swap because it only makes an annoying flash.

Closes #60
Set wallpaper source size to item size

Limit memory consumption by setting the source size to the item size.
Draw primary color behind the wallpaper

With some fill modes the wallpaper image doesn't cover the whole screen
so we need to display the primary color otherwise white would be used
by default and that's not what the user wants.
Cleanup BackgroundRenderer

No functional changes.
Swap background renderers with a parallel animation

Cross fade with a parallel animation.
Also decrease duration.