diff --git a/RZTransitions/Interactors/RZBaseSwipeInteractionController.m b/RZTransitions/Interactors/RZBaseSwipeInteractionController.m index 81c59c0..bcabc13 100644 --- a/RZTransitions/Interactors/RZBaseSwipeInteractionController.m +++ b/RZTransitions/Interactors/RZBaseSwipeInteractionController.m @@ -94,6 +94,9 @@ - (void)handlePanGesture:(UIPanGestureRecognizer *)panGestureRecognizer [self.fromViewController.navigationController popViewControllerAnimated:YES]; } else if (self.action & RZTransitionAction_Dismiss) { + [[NSNotificationCenter defaultCenter] + postNotificationName:@"disableRotation" + object:nil]; [self.fromViewController dismissViewControllerAnimated:YES completion:nil]; } } diff --git a/RZTransitions/Managers/RZTransitionsManager.m b/RZTransitions/Managers/RZTransitionsManager.m index 5d09cf4..9ffbab2 100644 --- a/RZTransitions/Managers/RZTransitionsManager.m +++ b/RZTransitions/Managers/RZTransitionsManager.m @@ -158,6 +158,10 @@ - (void)overrideAnimationDirection:(BOOL)override withTransition:(RZUniqueTransi // Find the dismissed view controller's view controller it is returning to UIViewController *presentingViewController = dismissed.presentingViewController; + if ( [presentingViewController isKindOfClass:[UITabBarController class]] ) { + UITabBarController *tabBarController = (UITabBarController *) presentingViewController; + presentingViewController = tabBarController.selectedViewController; + } if ( [presentingViewController isKindOfClass:[UINavigationController class]] ) { UIViewController *childVC = (UIViewController *)[[presentingViewController childViewControllers] lastObject]; if ( childVC != nil ) {