| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/browser_view_controller.h" | 5 #import "ios/chrome/browser/ui/browser_view_controller.h" |
| 6 | 6 |
| 7 #import <AssetsLibrary/AssetsLibrary.h> | 7 #import <AssetsLibrary/AssetsLibrary.h> |
| 8 #import <MobileCoreServices/MobileCoreServices.h> | 8 #import <MobileCoreServices/MobileCoreServices.h> |
| 9 #import <PassKit/PassKit.h> | 9 #import <PassKit/PassKit.h> |
| 10 #import <Photos/Photos.h> | 10 #import <Photos/Photos.h> |
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 #include "ios/chrome/grit/ios_strings.h" | 165 #include "ios/chrome/grit/ios_strings.h" |
| 166 #import "ios/net/request_tracker.h" | 166 #import "ios/net/request_tracker.h" |
| 167 #include "ios/public/provider/chrome/browser/chrome_browser_provider.h" | 167 #include "ios/public/provider/chrome/browser/chrome_browser_provider.h" |
| 168 #include "ios/public/provider/chrome/browser/ui/app_rating_prompt.h" | 168 #include "ios/public/provider/chrome/browser/ui/app_rating_prompt.h" |
| 169 #include "ios/public/provider/chrome/browser/ui/default_ios_web_view_factory.h" | 169 #include "ios/public/provider/chrome/browser/ui/default_ios_web_view_factory.h" |
| 170 #import "ios/public/provider/chrome/browser/voice/voice_search_bar.h" | 170 #import "ios/public/provider/chrome/browser/voice/voice_search_bar.h" |
| 171 #import "ios/public/provider/chrome/browser/voice/voice_search_bar_owner.h" | 171 #import "ios/public/provider/chrome/browser/voice/voice_search_bar_owner.h" |
| 172 #include "ios/public/provider/chrome/browser/voice/voice_search_controller.h" | 172 #include "ios/public/provider/chrome/browser/voice/voice_search_controller.h" |
| 173 #include "ios/public/provider/chrome/browser/voice/voice_search_controller_deleg
ate.h" | 173 #include "ios/public/provider/chrome/browser/voice/voice_search_controller_deleg
ate.h" |
| 174 #include "ios/public/provider/chrome/browser/voice/voice_search_provider.h" | 174 #include "ios/public/provider/chrome/browser/voice/voice_search_provider.h" |
| 175 #import "ios/web/navigation/crw_session_controller.h" | |
| 176 #include "ios/web/navigation/navigation_manager_impl.h" | 175 #include "ios/web/navigation/navigation_manager_impl.h" |
| 177 #include "ios/web/public/active_state_manager.h" | 176 #include "ios/web/public/active_state_manager.h" |
| 178 #include "ios/web/public/navigation_item.h" | 177 #include "ios/web/public/navigation_item.h" |
| 179 #import "ios/web/public/navigation_manager.h" | 178 #import "ios/web/public/navigation_manager.h" |
| 180 #include "ios/web/public/referrer_util.h" | 179 #include "ios/web/public/referrer_util.h" |
| 181 #include "ios/web/public/ssl_status.h" | 180 #include "ios/web/public/ssl_status.h" |
| 182 #include "ios/web/public/url_scheme_util.h" | 181 #include "ios/web/public/url_scheme_util.h" |
| 183 #include "ios/web/public/user_agent.h" | 182 #include "ios/web/public/user_agent.h" |
| 184 #include "ios/web/public/web_client.h" | 183 #include "ios/web/public/web_client.h" |
| 185 #import "ios/web/public/web_state/context_menu_params.h" | 184 #import "ios/web/public/web_state/context_menu_params.h" |
| (...skipping 3241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3427 | 3426 |
| 3428 - (void)showTabHistoryPopupForBackwardHistory { | 3427 - (void)showTabHistoryPopupForBackwardHistory { |
| 3429 DCHECK(self.visible || self.dismissingModal); | 3428 DCHECK(self.visible || self.dismissingModal); |
| 3430 | 3429 |
| 3431 // Dismiss the omnibox (if open). | 3430 // Dismiss the omnibox (if open). |
| 3432 [_toolbarController cancelOmniboxEdit]; | 3431 [_toolbarController cancelOmniboxEdit]; |
| 3433 // Dismiss the soft keyboard (if open). | 3432 // Dismiss the soft keyboard (if open). |
| 3434 Tab* tab = [_model currentTab]; | 3433 Tab* tab = [_model currentTab]; |
| 3435 [tab.webController dismissKeyboard]; | 3434 [tab.webController dismissKeyboard]; |
| 3436 | 3435 |
| 3437 DCHECK([tab navigationManager]); | 3436 web::NavigationManager* navigationManager = [tab navigationManager]; |
| 3438 CRWSessionController* sc = | 3437 [_toolbarController |
| 3439 [tab navigationManagerImpl]->GetSessionController(); | 3438 showTabHistoryPopupInView:[self view] |
| 3440 [_toolbarController showTabHistoryPopupInView:[self view] | 3439 withItems:navigationManager->GetBackwardItems() |
| 3441 withItems:[sc backwardItems] | 3440 forBackHistory:YES]; |
| 3442 forBackHistory:YES]; | |
| 3443 } | 3441 } |
| 3444 | 3442 |
| 3445 - (void)showTabHistoryPopupForForwardHistory { | 3443 - (void)showTabHistoryPopupForForwardHistory { |
| 3446 DCHECK(self.visible || self.dismissingModal); | 3444 DCHECK(self.visible || self.dismissingModal); |
| 3447 | 3445 |
| 3448 // Dismiss the omnibox (if open). | 3446 // Dismiss the omnibox (if open). |
| 3449 [_toolbarController cancelOmniboxEdit]; | 3447 [_toolbarController cancelOmniboxEdit]; |
| 3450 // Dismiss the soft keyboard (if open). | 3448 // Dismiss the soft keyboard (if open). |
| 3451 Tab* tab = [_model currentTab]; | 3449 Tab* tab = [_model currentTab]; |
| 3452 [tab.webController dismissKeyboard]; | 3450 [tab.webController dismissKeyboard]; |
| 3453 | 3451 |
| 3454 DCHECK([tab navigationManager]); | 3452 web::NavigationManager* navigationManager = [tab navigationManager]; |
| 3455 CRWSessionController* sc = | 3453 DCHECK(navigationManager); |
| 3456 [tab navigationManagerImpl]->GetSessionController(); | 3454 [_toolbarController |
| 3457 [_toolbarController showTabHistoryPopupInView:[self view] | 3455 showTabHistoryPopupInView:[self view] |
| 3458 withItems:[sc forwardItems] | 3456 withItems:navigationManager->GetForwardItems() |
| 3459 forBackHistory:NO]; | 3457 forBackHistory:NO]; |
| 3460 } | 3458 } |
| 3461 | 3459 |
| 3462 - (void)navigateToSelectedEntry:(id)sender { | 3460 - (void)navigateToSelectedEntry:(id)sender { |
| 3463 DCHECK([sender isKindOfClass:[TabHistoryCell class]]); | 3461 DCHECK([sender isKindOfClass:[TabHistoryCell class]]); |
| 3464 TabHistoryCell* selectedCell = (TabHistoryCell*)sender; | 3462 TabHistoryCell* selectedCell = (TabHistoryCell*)sender; |
| 3465 [[_model currentTab] goToItem:selectedCell.item]; | 3463 [[_model currentTab] goToItem:selectedCell.item]; |
| 3466 [_toolbarController dismissTabHistoryPopup]; | 3464 [_toolbarController dismissTabHistoryPopup]; |
| 3467 } | 3465 } |
| 3468 | 3466 |
| 3469 - (void)print { | 3467 - (void)print { |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3643 return; | 3641 return; |
| 3644 } | 3642 } |
| 3645 | 3643 |
| 3646 if (url == [_preloadController prerenderedURL]) { | 3644 if (url == [_preloadController prerenderedURL]) { |
| 3647 Tab* oldTab = [_model currentTab]; | 3645 Tab* oldTab = [_model currentTab]; |
| 3648 Tab* newTab = [_preloadController releasePrerenderContents]; | 3646 Tab* newTab = [_preloadController releasePrerenderContents]; |
| 3649 DCHECK(oldTab); | 3647 DCHECK(oldTab); |
| 3650 DCHECK(newTab); | 3648 DCHECK(newTab); |
| 3651 if (oldTab && newTab) { | 3649 if (oldTab && newTab) { |
| 3652 [oldTab recordStateInHistory]; | 3650 [oldTab recordStateInHistory]; |
| 3653 DCHECK([newTab navigationManager]); | 3651 web::NavigationManager* newNavigationManager = [newTab navigationManager]; |
| 3654 CRWSessionController* newHistory = | 3652 web::NavigationManager* oldNavigationManager = [oldTab navigationManager]; |
| 3655 [newTab navigationManagerImpl]->GetSessionController(); | 3653 newNavigationManager->InsertStateFromManager(oldNavigationManager); |
| 3656 DCHECK([oldTab navigationManager]); | |
| 3657 CRWSessionController* oldHistory = | |
| 3658 [oldTab navigationManagerImpl]->GetSessionController(); | |
| 3659 [newHistory insertStateFromSessionController:oldHistory]; | |
| 3660 [[newTab nativeAppNavigationController] | 3654 [[newTab nativeAppNavigationController] |
| 3661 copyStateFrom:[oldTab nativeAppNavigationController]]; | 3655 copyStateFrom:[oldTab nativeAppNavigationController]]; |
| 3662 [_model replaceTab:oldTab withTab:newTab]; | 3656 [_model replaceTab:oldTab withTab:newTab]; |
| 3663 | 3657 |
| 3664 // Set isPrerenderTab to NO after replacing the tab. This will allow the | 3658 // Set isPrerenderTab to NO after replacing the tab. This will allow the |
| 3665 // BrowserViewController to detect that a pre-rendered tab is switched in, | 3659 // BrowserViewController to detect that a pre-rendered tab is switched in, |
| 3666 // and show the prerendering animation. | 3660 // and show the prerendering animation. |
| 3667 newTab.isPrerenderTab = NO; | 3661 newTab.isPrerenderTab = NO; |
| 3668 | 3662 |
| 3669 [self tabLoadComplete:newTab withSuccess:newTab.loadFinished]; | 3663 [self tabLoadComplete:newTab withSuccess:newTab.loadFinished]; |
| (...skipping 1418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5088 | 5082 |
| 5089 - (UIView*)voiceSearchButton { | 5083 - (UIView*)voiceSearchButton { |
| 5090 return _voiceSearchButton; | 5084 return _voiceSearchButton; |
| 5091 } | 5085 } |
| 5092 | 5086 |
| 5093 - (id<LogoAnimationControllerOwner>)logoAnimationControllerOwner { | 5087 - (id<LogoAnimationControllerOwner>)logoAnimationControllerOwner { |
| 5094 return [self currentLogoAnimationControllerOwner]; | 5088 return [self currentLogoAnimationControllerOwner]; |
| 5095 } | 5089 } |
| 5096 | 5090 |
| 5097 @end | 5091 @end |
| OLD | NEW |