Skip visibility check (view.window != nil) if non animated viewController change was requested.
User case: a ButtonBarPagerTabStripViewController is not navigationController.topViewController (but was visible so viewDidLoad had been called),
moveToViewController(at: 1, animated: false) was called prior to the screen show (popViewController)
Expected behavior: a controller is shown with selected tab on screen/controller show
Current behavior: a controller change animation starts after the navigation animation is completed.
Skip visibility check (view.window != nil) if non animated viewController change was requested.
User case: a ButtonBarPagerTabStripViewController is not navigationController.topViewController (but was visible so viewDidLoad had been called), moveToViewController(at: 1, animated: false) was called prior to the screen show (popViewController) Expected behavior: a controller is shown with selected tab on screen/controller show Current behavior: a controller change animation starts after the navigation animation is completed.