diff options
Diffstat (limited to 'platform/ios/src/UIViewController+MGLAdditions.m')
-rw-r--r-- | platform/ios/src/UIViewController+MGLAdditions.m | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/platform/ios/src/UIViewController+MGLAdditions.m b/platform/ios/src/UIViewController+MGLAdditions.m new file mode 100644 index 0000000000..746fdd8db8 --- /dev/null +++ b/platform/ios/src/UIViewController+MGLAdditions.m @@ -0,0 +1,22 @@ +#import "UIViewController+MGLAdditions.h" + +@implementation UIViewController (MGLAdditions) + +- (UIViewController *)mgl_topMostViewController +{ + if ([self isKindOfClass:[UINavigationController class]]) + { + return [[(UINavigationController *)self visibleViewController] mgl_topMostViewController]; + } + else if ([self isKindOfClass:[UITabBarController class]]) + { + return [[(UITabBarController *)self selectedViewController] mgl_topMostViewController]; + } + else if (self.presentedViewController) + { + return [self.presentedViewController mgl_topMostViewController]; + } + return self; +} + +@end |