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/clean/chrome/browser/ui/tab/tab_coordinator.h" | 5 #import "ios/clean/chrome/browser/ui/tab/tab_coordinator.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "base/mac/foundation_util.h" | 9 #include "base/mac/foundation_util.h" |
10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 self.viewController.transitioningDelegate = self; | 53 self.viewController.transitioningDelegate = self; |
54 self.viewController.modalPresentationStyle = UIModalPresentationCustom; | 54 self.viewController.modalPresentationStyle = UIModalPresentationCustom; |
55 _webStateObserver = | 55 _webStateObserver = |
56 base::MakeUnique<web::WebStateObserverBridge>(self.webState, self); | 56 base::MakeUnique<web::WebStateObserverBridge>(self.webState, self); |
57 | 57 |
58 [self.browser->broadcaster() | 58 [self.browser->broadcaster() |
59 broadcastValue:@"tabStripVisible" | 59 broadcastValue:@"tabStripVisible" |
60 ofObject:self.viewController | 60 ofObject:self.viewController |
61 selector:@selector(broadcastTabStripVisible:)]; | 61 selector:@selector(broadcastTabStripVisible:)]; |
62 | 62 |
63 CommandDispatcher* dispatcher = self.browser->dispatcher(); | |
64 // TabCommands | 63 // TabCommands |
65 [dispatcher startDispatchingToTarget:self forSelector:@selector(loadURL:)]; | 64 [self.dispatcher startDispatchingToTarget:self |
| 65 forSelector:@selector(loadURL:)]; |
66 | 66 |
67 WebCoordinator* webCoordinator = [[WebCoordinator alloc] init]; | 67 WebCoordinator* webCoordinator = [[WebCoordinator alloc] init]; |
68 webCoordinator.webState = self.webState; | 68 webCoordinator.webState = self.webState; |
69 [self addChildCoordinator:webCoordinator]; | 69 [self addChildCoordinator:webCoordinator]; |
70 [webCoordinator start]; | 70 [webCoordinator start]; |
71 self.webCoordinator = webCoordinator; | 71 self.webCoordinator = webCoordinator; |
72 | 72 |
73 ToolbarCoordinator* toolbarCoordinator = [[ToolbarCoordinator alloc] init]; | 73 ToolbarCoordinator* toolbarCoordinator = [[ToolbarCoordinator alloc] init]; |
74 toolbarCoordinator.webState = self.webState; | 74 toolbarCoordinator.webState = self.webState; |
75 [self addChildCoordinator:toolbarCoordinator]; | 75 [self addChildCoordinator:toolbarCoordinator]; |
(...skipping 22 matching lines...) Expand all Loading... |
98 } | 98 } |
99 | 99 |
100 - (void)stop { | 100 - (void)stop { |
101 [super stop]; | 101 [super stop]; |
102 for (BrowserCoordinator* child in self.children) { | 102 for (BrowserCoordinator* child in self.children) { |
103 [self removeChildCoordinator:child]; | 103 [self removeChildCoordinator:child]; |
104 } | 104 } |
105 [self.browser->broadcaster() | 105 [self.browser->broadcaster() |
106 stopBroadcastingForSelector:@selector(broadcastTabStripVisible:)]; | 106 stopBroadcastingForSelector:@selector(broadcastTabStripVisible:)]; |
107 _webStateObserver.reset(); | 107 _webStateObserver.reset(); |
108 [self.browser->dispatcher() stopDispatchingToTarget:self]; | 108 [self.dispatcher stopDispatchingToTarget:self]; |
109 } | 109 } |
110 | 110 |
111 - (void)childCoordinatorDidStart:(BrowserCoordinator*)childCoordinator { | 111 - (void)childCoordinatorDidStart:(BrowserCoordinator*)childCoordinator { |
112 if ([childCoordinator isKindOfClass:[ToolbarCoordinator class]]) { | 112 if ([childCoordinator isKindOfClass:[ToolbarCoordinator class]]) { |
113 self.viewController.toolbarViewController = childCoordinator.viewController; | 113 self.viewController.toolbarViewController = childCoordinator.viewController; |
114 } else if ([childCoordinator isKindOfClass:[WebCoordinator class]] || | 114 } else if ([childCoordinator isKindOfClass:[WebCoordinator class]] || |
115 [childCoordinator isKindOfClass:[NTPCoordinator class]]) { | 115 [childCoordinator isKindOfClass:[NTPCoordinator class]]) { |
116 self.viewController.contentViewController = childCoordinator.viewController; | 116 self.viewController.contentViewController = childCoordinator.viewController; |
117 } else if ([childCoordinator isKindOfClass:[TabStripCoordinator class]]) { | 117 } else if ([childCoordinator isKindOfClass:[TabStripCoordinator class]]) { |
118 self.viewController.tabStripViewController = | 118 self.viewController.tabStripViewController = |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
201 return animator; | 201 return animator; |
202 } | 202 } |
203 | 203 |
204 #pragma mark - TabCommands | 204 #pragma mark - TabCommands |
205 | 205 |
206 - (void)loadURL:(web::NavigationManager::WebLoadParams)params { | 206 - (void)loadURL:(web::NavigationManager::WebLoadParams)params { |
207 self.webState->GetNavigationManager()->LoadURLWithParams(params); | 207 self.webState->GetNavigationManager()->LoadURLWithParams(params); |
208 } | 208 } |
209 | 209 |
210 @end | 210 @end |
OLD | NEW |