Improved the sequence of image selecting, loading, scaling and showing. It feels a bit better starting from the second image.
There's a bunch of not finished code for auto-rotation, minimal image scale. But I couldn't figure out how to avoid scrolling outside of bounds.
Set as wallpaper functionality using QPainter. For now only translation works fine. Rotation and scale are a harder  beast to kill. Not final code.
Solo rotations of square images work. Solo translations work with any image.
It works!!!! It freaking works!!! Finally! Finally! Oh gosh, I'm so happy! Scaling + rotating + translating + square + rectangular images!