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" |
11 #include "ios/chrome/browser/chrome_url_constants.h" | 11 #include "ios/chrome/browser/chrome_url_constants.h" |
12 #import "ios/clean/chrome/browser/ui/animators/zoom_transition_animator.h" | 12 #import "ios/clean/chrome/browser/ui/animators/zoom_transition_animator.h" |
13 #import "ios/clean/chrome/browser/ui/commands/tab_commands.h" | 13 #import "ios/clean/chrome/browser/ui/commands/tab_commands.h" |
| 14 #import "ios/clean/chrome/browser/ui/commands/tab_strip_commands.h" |
14 #import "ios/clean/chrome/browser/ui/find_in_page/find_in_page_coordinator.h" | 15 #import "ios/clean/chrome/browser/ui/find_in_page/find_in_page_coordinator.h" |
15 #import "ios/clean/chrome/browser/ui/ntp/ntp_coordinator.h" | 16 #import "ios/clean/chrome/browser/ui/ntp/ntp_coordinator.h" |
16 #import "ios/clean/chrome/browser/ui/tab/tab_container_view_controller.h" | 17 #import "ios/clean/chrome/browser/ui/tab/tab_container_view_controller.h" |
17 #import "ios/clean/chrome/browser/ui/tab_strip/tab_strip_coordinator.h" | 18 #import "ios/clean/chrome/browser/ui/tab_strip/tab_strip_coordinator.h" |
18 #import "ios/clean/chrome/browser/ui/toolbar/toolbar_coordinator.h" | 19 #import "ios/clean/chrome/browser/ui/toolbar/toolbar_coordinator.h" |
19 #import "ios/clean/chrome/browser/ui/web_contents/web_coordinator.h" | 20 #import "ios/clean/chrome/browser/ui/web_contents/web_coordinator.h" |
20 #import "ios/shared/chrome/browser/ui/broadcaster/chrome_broadcaster.h" | 21 #import "ios/shared/chrome/browser/ui/broadcaster/chrome_broadcaster.h" |
21 #import "ios/shared/chrome/browser/ui/browser_list/browser.h" | 22 #import "ios/shared/chrome/browser/ui/browser_list/browser.h" |
22 #import "ios/shared/chrome/browser/ui/commands/command_dispatcher.h" | 23 #import "ios/shared/chrome/browser/ui/commands/command_dispatcher.h" |
23 #import "ios/shared/chrome/browser/ui/coordinators/browser_coordinator+internal.
h" | 24 #import "ios/shared/chrome/browser/ui/coordinators/browser_coordinator+internal.
h" |
(...skipping 30 matching lines...) Expand all Loading... |
54 self.viewController.modalPresentationStyle = UIModalPresentationCustom; | 55 self.viewController.modalPresentationStyle = UIModalPresentationCustom; |
55 _webStateObserver = | 56 _webStateObserver = |
56 base::MakeUnique<web::WebStateObserverBridge>(self.webState, self); | 57 base::MakeUnique<web::WebStateObserverBridge>(self.webState, self); |
57 | 58 |
58 [self.browser->broadcaster() | 59 [self.browser->broadcaster() |
59 broadcastValue:@"tabStripVisible" | 60 broadcastValue:@"tabStripVisible" |
60 ofObject:self.viewController | 61 ofObject:self.viewController |
61 selector:@selector(broadcastTabStripVisible:)]; | 62 selector:@selector(broadcastTabStripVisible:)]; |
62 | 63 |
63 CommandDispatcher* dispatcher = self.browser->dispatcher(); | 64 CommandDispatcher* dispatcher = self.browser->dispatcher(); |
64 // TabCommands | 65 // Register Commands |
65 [dispatcher startDispatchingToTarget:self forSelector:@selector(loadURL:)]; | 66 [dispatcher startDispatchingToTarget:self forSelector:@selector(loadURL:)]; |
| 67 [dispatcher startDispatchingToTarget:self |
| 68 forSelector:@selector(showTabStrip)]; |
66 | 69 |
67 WebCoordinator* webCoordinator = [[WebCoordinator alloc] init]; | 70 WebCoordinator* webCoordinator = [[WebCoordinator alloc] init]; |
68 webCoordinator.webState = self.webState; | 71 webCoordinator.webState = self.webState; |
69 [self addChildCoordinator:webCoordinator]; | 72 [self addChildCoordinator:webCoordinator]; |
70 [webCoordinator start]; | 73 [webCoordinator start]; |
71 self.webCoordinator = webCoordinator; | 74 self.webCoordinator = webCoordinator; |
72 | 75 |
73 ToolbarCoordinator* toolbarCoordinator = [[ToolbarCoordinator alloc] init]; | 76 ToolbarCoordinator* toolbarCoordinator = [[ToolbarCoordinator alloc] init]; |
74 toolbarCoordinator.webState = self.webState; | 77 toolbarCoordinator.webState = self.webState; |
75 [self addChildCoordinator:toolbarCoordinator]; | 78 [self addChildCoordinator:toolbarCoordinator]; |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 [animator selectDelegate:@[ dismissed.presentingViewController ]]; | 203 [animator selectDelegate:@[ dismissed.presentingViewController ]]; |
201 return animator; | 204 return animator; |
202 } | 205 } |
203 | 206 |
204 #pragma mark - TabCommands | 207 #pragma mark - TabCommands |
205 | 208 |
206 - (void)loadURL:(web::NavigationManager::WebLoadParams)params { | 209 - (void)loadURL:(web::NavigationManager::WebLoadParams)params { |
207 self.webState->GetNavigationManager()->LoadURLWithParams(params); | 210 self.webState->GetNavigationManager()->LoadURLWithParams(params); |
208 } | 211 } |
209 | 212 |
| 213 #pragma mark - TabStripCommands |
| 214 |
| 215 - (void)showTabStrip { |
| 216 self.viewController.tabStripVisible = YES; |
| 217 } |
| 218 |
210 @end | 219 @end |
OLD | NEW |