| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #import "ios/chrome/browser/ui/util/top_view_controller.h" | 5 #import "ios/chrome/browser/ui/util/top_view_controller.h" |
| 6 | 6 |
| 7 #if !defined(__has_feature) || !__has_feature(objc_arc) |
| 8 #error "This file requires ARC support." |
| 9 #endif |
| 10 |
| 7 namespace top_view_controller { | 11 namespace top_view_controller { |
| 8 | 12 |
| 9 UIViewController* TopPresentedViewController() { | 13 UIViewController* TopPresentedViewController() { |
| 10 return TopPresentedViewControllerFrom( | 14 return TopPresentedViewControllerFrom( |
| 11 [[UIApplication sharedApplication] keyWindow].rootViewController); | 15 [[UIApplication sharedApplication] keyWindow].rootViewController); |
| 12 } | 16 } |
| 13 UIViewController* TopPresentedViewControllerFrom( | 17 UIViewController* TopPresentedViewControllerFrom( |
| 14 UIViewController* base_view_controller) { | 18 UIViewController* base_view_controller) { |
| 15 UIViewController* topController = base_view_controller; | 19 UIViewController* topController = base_view_controller; |
| 16 for (UIViewController* controller = [topController presentedViewController]; | 20 for (UIViewController* controller = [topController presentedViewController]; |
| 17 controller && ![controller isBeingDismissed]; | 21 controller && ![controller isBeingDismissed]; |
| 18 controller = [controller presentedViewController]) { | 22 controller = [controller presentedViewController]) { |
| 19 topController = controller; | 23 topController = controller; |
| 20 } | 24 } |
| 21 return topController; | 25 return topController; |
| 22 } | 26 } |
| 23 | 27 |
| 24 } // namespace top_view_controller | 28 } // namespace top_view_controller |
| OLD | NEW |