When using the following method [[Twitter sharedInstance] logInWithCompletion… a view controller with an in-app webview is presented for the user to sign in, given the user does not have the native Twitter app nor has signed into Twitter via device’s Settings. Upon successful login, the completion handler is immediately called, without waiting for the modally presented view controller to finish its’ dismissal animation.
This can be a problem because a common pattern in apps will use the top most presented view controller in the key window to present their next view controller (in my case a TWTRShareEmailViewController to fetch user’s email). The dismissing view controller, however, is still seen as the top most presented view controller because it has not yet finished dismissing, and will not actually be available for presenting my next view controller (TWTRShareEmailViewController).
Tested on iOS 8.x