Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(318)

Side by Side Diff: ios/clean/chrome/browser/ui/tab/tab_coordinator.mm

Issue 2935653002: [ios clean] Move dispatcher out of Browser.
Patch Set: Dispatcher out of Browser. Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698