| 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 c1a9437cf8263db0fe1e8b699f6dad2b2763af0c..f2a9cb543bf1c1b313cf4dcfa4552612c5b58ddc 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,12 @@
 | 
|  #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/shared/chrome/browser/tabs/web_state_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) {}
 | 
| @@ -80,16 +79,16 @@ sessions::LiveTab* TabRestoreServiceDelegateImplIOS::AddRestoredTab(
 | 
|    DCHECK_LT(selected_navigation, static_cast<int>(navigations.size()));
 | 
|  
 | 
|    web::WebState::CreateParams params(browser_state_);
 | 
| -  std::unique_ptr<WebStateImpl> webState(new WebStateImpl(params));
 | 
| +  std::unique_ptr<web::WebStateImpl> web_state(new web::WebStateImpl(params));
 | 
|    std::vector<std::unique_ptr<web::NavigationItem>> items =
 | 
|        sessions::IOSSerializedNavigationBuilder::ToNavigationItems(navigations);
 | 
| -  webState->GetNavigationManagerImpl().ReplaceSessionHistory(
 | 
| +  web_state->GetNavigationManagerImpl().ReplaceSessionHistory(
 | 
|        std::move(items), selected_navigation);
 | 
| -  TabModel* tabModel = tab_model();
 | 
| -  Tab* tab =
 | 
| -      [tabModel insertTabWithWebState:std::move(webState) atIndex:tab_index];
 | 
| +
 | 
| +  WebStateList* web_state_list = [tab_model() webStateList];
 | 
| +  web_state_list->InsertWebState(tab_index, std::move(web_state));
 | 
|    // TODO(crbug.com/661636): Handle tab-switch animation somehow...
 | 
| -  [tabModel setCurrentTab:tab];
 | 
| +  web_state_list->ActivateWebStateAt(tab_index);
 | 
|    return nullptr;
 | 
|  }
 | 
|  
 | 
| @@ -113,5 +112,6 @@ sessions::LiveTab* TabRestoreServiceDelegateImplIOS::ReplaceRestoredTab(
 | 
|  }
 | 
|  
 | 
|  void TabRestoreServiceDelegateImplIOS::CloseTab() {
 | 
| -  [[tab_model() currentTab] close];
 | 
| +  WebStateList* web_state_list = [tab_model() webStateList];
 | 
| +  web_state_list->CloseWebStateAt(web_state_list->active_index());
 | 
|  }
 | 
| 
 |