ProgressWidget: Tweaking the end of the animation

It may be that because ClientWindow is still switching to an
entirely different UI tree (busy=>normal), a blank frame is drawn and
thus the progress from the previous frame becomes visible for a brief
moment at the end of the animation.

Now ProgressWidget is not considered complete until two frames have
been drawn at the final position, allowing a GL buffer swap to occur
without consequences.

Todo for later: Busy mode shouldn't use a separate UI tree -- there's
shouldn't be a "busy mode" at all.