The problem occurs when calling [UIWindow makeKeyAndVisible],
while there's a presented vc.
You can dismiss and present the modal immediately (no UI glitches):
[window makeKeyAndVisible];
if (myCurrentVC.presentedViewController != nil) {
UIViewController *presented = myCurrentVC.presentedViewController;
[myCurrentVC dismissViewControllerAnimated:NO completion:nil];
[myCurrentVC presentModalViewController:presented animated:NO];
}
Works great for me