| Index: ios/chrome/browser/sessions/tab_restore_service_delegate_impl_ios.mm
|
| diff --git a/ios/chrome/browser/sessions/tab_restore_service_delegate_impl_ios.mm b/ios/chrome/browser/sessions/tab_restore_service_delegate_impl_ios.mm
|
| index ce782676dc0a5ff79865caa7c11e76cd7efb174b..dcbc5d2227875772a3275bc3c6f67e15271c50a1 100644
|
| --- a/ios/chrome/browser/sessions/tab_restore_service_delegate_impl_ios.mm
|
| +++ b/ios/chrome/browser/sessions/tab_restore_service_delegate_impl_ios.mm
|
| @@ -15,13 +15,9 @@
|
| #import "ios/chrome/browser/tabs/tab.h"
|
| #import "ios/chrome/browser/tabs/tab_model.h"
|
| #import "ios/chrome/browser/tabs/tab_model_list.h"
|
| -#import "ios/web/navigation/navigation_manager_impl.h"
|
| #include "ios/web/public/navigation_item.h"
|
| -#import "ios/web/web_state/web_state_impl.h"
|
| #import "net/base/mac/url_conversions.h"
|
|
|
| -using web::WebStateImpl;
|
| -
|
| TabRestoreServiceDelegateImplIOS::TabRestoreServiceDelegateImplIOS(
|
| ios::ChromeBrowserState* browser_state)
|
| : browser_state_(browser_state) {}
|
| @@ -78,17 +74,13 @@ sessions::LiveTab* TabRestoreServiceDelegateImplIOS::AddRestoredTab(
|
| const sessions::PlatformSpecificTabData* tab_platform_data,
|
| const std::string& user_agent_override) {
|
| DCHECK_LT(selected_navigation, static_cast<int>(navigations.size()));
|
| -
|
| - std::unique_ptr<WebStateImpl> webState(new WebStateImpl(browser_state_));
|
| - std::vector<std::unique_ptr<web::NavigationItem>> items =
|
| + DCHECK_GE(tab_index, 0);
|
| + web::ScopedNavigationItemList items =
|
| sessions::IOSSerializedNavigationBuilder::ToNavigationItems(navigations);
|
| - webState->GetNavigationManagerImpl().ReplaceSessionHistory(
|
| - std::move(items), selected_navigation);
|
| - TabModel* tabModel = tab_model();
|
| - Tab* tab =
|
| - [tabModel insertTabWithWebState:std::move(webState) atIndex:tab_index];
|
| - // TODO(crbug.com/661636): Handle tab-switch animation somehow...
|
| - [tabModel setCurrentTab:tab];
|
| + [tab_model() insertTabWithNavigationItems:std::move(items)
|
| + selectedNavigationIndex:selected_navigation
|
| + atIndex:static_cast<NSUInteger>(tab_index)
|
| + inBackground:NO];
|
| return nullptr;
|
| }
|
|
|
|
|