Fix BGRT fallback rendering
Replaces !130 (closed)
Fixes #142 (closed)
I split up background_bgrt_image
and background_bgrt_fallback_image
so that the two images can be handled differently. view_set_bgrt_background
does a lot of work to manipulate the image to deal with buggy firmwares, but in the fallback case we're just loading a regular image so none of that is needed. Moreover, the manipulations done to fix the real BGRT image end up breaking scaling when using a fallback image (see this comment). So, when view_set_bgrt_background
fails to draw the BGRT image, I fall through to view_set_bgrt_fallback_background
which draws the fallback image with the proper scale.
This code has been tested in GNOME Boxes (lodpi, with & without BGRT enabled) and on a MacBook (hidpi, without BGRT in firmware)