Skip to content

Commit

Permalink
'Don't pop last controller' issue fixed
Browse files Browse the repository at this point in the history
  • Loading branch information
bfolder committed May 2, 2012
1 parent 2a543d0 commit 5b53206
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions BFNavigationController.m
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -254,16 +254,17 @@ -(NSArray *)popToViewController: (NSViewController *)viewController animated: (B
return nil; return nil;


NSViewController *visibleController = self.visibleViewController; NSViewController *visibleController = self.visibleViewController;

// Don't pop last controller
if(visibleController == viewController)
return nil;

NSUInteger index = [_viewControllers indexOfObject: viewController]; NSUInteger index = [_viewControllers indexOfObject: viewController];
NSUInteger length = [_viewControllers count] - (index + 1); NSUInteger length = [_viewControllers count] - (index + 1);
NSRange range = NSMakeRange(index + 1, length); NSRange range = NSMakeRange(index + 1, length);
NSArray *dispControllers = [_viewControllers subarrayWithRange: range]; NSArray *dispControllers = [_viewControllers subarrayWithRange: range];
[_viewControllers removeObjectsInArray: dispControllers]; [_viewControllers removeObjectsInArray: dispControllers];


// Don't pop last controller
if(visibleController == viewController)
return nil;

// Navigate // Navigate
[self _navigateFromViewController: visibleController toViewController: viewController animated: animated push: NO]; [self _navigateFromViewController: visibleController toViewController: viewController animated: animated push: NO];


Expand Down
Binary file not shown.

0 comments on commit 5b53206

Please sign in to comment.