ImageOverlayDialog::paintEvent was being called three times:
width and height is 76 , 30
width and height is 1460 , 1200
width and height is 1460 , 1200
Presumably the first one is before the fullscreen kicks in. However, this meant that the image got squashed and never recovered.
Therefore this doesn't destroy the original image but keeps a copy for the resized one.
I'm slightly surprised that we actually have to scale the image though - can't Qt do this for you, if you tell it to draw the image into the right sized container?