Bug 1041710: Ensure that wallpaper images always exactly match the size of the screen

nit: I ended up always use `bind()` instead of `self = this` because you never know if your next patch will move more code into these callback blocks (and forget to replace `this` with `self`!)