Chromium Code Reviews| Index: ios/clean/chrome/browser/ui/tab/tab_coordinator.mm |
| diff --git a/ios/clean/chrome/browser/ui/tab/tab_coordinator.mm b/ios/clean/chrome/browser/ui/tab/tab_coordinator.mm |
| index a821971055d3c240c7a8278f306aa8d35e2187f4..ad4db4847ec8e1c891564e63dae85f344b8b7777 100644 |
| --- a/ios/clean/chrome/browser/ui/tab/tab_coordinator.mm |
| +++ b/ios/clean/chrome/browser/ui/tab/tab_coordinator.mm |
| @@ -16,6 +16,7 @@ |
| #import "ios/clean/chrome/browser/ui/actions/tab_grid_actions.h" |
| #import "ios/clean/chrome/browser/ui/actions/tab_strip_actions.h" |
| #import "ios/clean/chrome/browser/ui/animators/zoom_transition_animator.h" |
| +#import "ios/clean/chrome/browser/ui/find_in_page/find_in_page_coordinator.h" |
| #import "ios/clean/chrome/browser/ui/ntp/new_tab_page_coordinator.h" |
| #import "ios/clean/chrome/browser/ui/tab/tab_container_view_controller.h" |
| #import "ios/clean/chrome/browser/ui/toolbar/toolbar_coordinator.h" |
| @@ -71,6 +72,12 @@ const BOOL kUseBottomToolbar = NO; |
| toolbarCoordinator.context.baseViewController = nil; |
| [toolbarCoordinator start]; |
| + // Create the FindInPage coordinator but do not start it. It will be started |
| + // when a find in page operation is invoked. |
| + FindInPageCoordinator* findInPageCoordinator = |
| + [[FindInPageCoordinator alloc] init]; |
| + [self addChildCoordinator:findInPageCoordinator]; |
| + |
| // PLACEHOLDER: Replace this placeholder with an actual tab strip view |
| // controller. |
| UIButton* button = [UIButton buttonWithType:UIButtonTypeCustom]; |
| @@ -100,13 +107,24 @@ const BOOL kUseBottomToolbar = NO; |
| } |
| - (void)childCoordinatorDidStart:(BrowserCoordinator*)coordinator { |
| - if ([coordinator isKindOfClass:[ToolbarCoordinator class]]) { |
| + if ([coordinator isKindOfClass:[FindInPageCoordinator class]]) { |
| + self.viewController.findBarViewController = coordinator.viewController; |
| + } else if ([coordinator isKindOfClass:[ToolbarCoordinator class]]) { |
| self.viewController.toolbarViewController = coordinator.viewController; |
| } else if ([coordinator isKindOfClass:[WebCoordinator class]]) { |
| self.viewController.contentViewController = coordinator.viewController; |
| } |
| } |
| +- (void)childCoordinatorWillStop:(BrowserCoordinator*)coordinator { |
| + if ([coordinator isKindOfClass:[FindInPageCoordinator class]]) { |
| + self.viewController.findBarViewController = nil; |
|
rohitrao (ping after 24h)
2017/03/14 01:10:37
12) The FIP coordinator can be stopped and its UI
|
| + } else { |
| + // No other child coordinators should ever stop. |
| + NOTREACHED(); |
| + } |
| +} |
| + |
| - (BOOL)canAddOverlayCoordinator:(BrowserCoordinator*)overlayCoordinator { |
| // This coordinator will always accept overlay coordinators. |
| return YES; |