dismiss view if dismiss is called before the view is visible

If there is a race between when the progress view becomes visible and when `+dismiss` is called, the progress view shows up and can spin indefinitely because the call to dismiss it is overlooked.