Chromium Code Reviews| Index: ios/clean/chrome/app/steps/root_coordinator+application_step.mm |
| diff --git a/ios/clean/chrome/app/steps/root_coordinator+application_step.mm b/ios/clean/chrome/app/steps/root_coordinator+application_step.mm |
| index c6041a24bc6528f7e8ecb661b9b540878a2c12de..fea3ab407e5b11e01639e232d4bf7933ebc0eeb7 100644 |
| --- a/ios/clean/chrome/app/steps/root_coordinator+application_step.mm |
| +++ b/ios/clean/chrome/app/steps/root_coordinator+application_step.mm |
| @@ -5,12 +5,14 @@ |
| #import "ios/clean/chrome/app/steps/root_coordinator+application_step.h" |
| #include "base/memory/ptr_util.h" |
| -#import "base/supports_user_data.h" |
| +#include "base/supports_user_data.h" |
| #include "ios/chrome/browser/browser_state/chrome_browser_state.h" |
| #import "ios/chrome/browser/web_state_list/web_state_list.h" |
| #import "ios/clean/chrome/app/application_state.h" |
| #import "ios/shared/chrome/browser/ui/browser_list/browser.h" |
| #import "ios/shared/chrome/browser/ui/browser_list/browser_list.h" |
| +#import "ios/shared/chrome/browser/ui/browser_list/browser_list_session_service.h" |
| +#import "ios/shared/chrome/browser/ui/browser_list/browser_list_session_service_factory.h" |
| #import "ios/shared/chrome/browser/ui/coordinators/browser_coordinator+internal.h" |
| #import "ios/web/public/navigation_manager.h" |
| #include "ios/web/public/web_state/web_state.h" |
| @@ -49,16 +51,16 @@ const char kRootCoordinatorContainerKey[] = "root_coordinator"; |
| self.browser = |
| BrowserList::FromBrowserState(state.browserState)->CreateNewBrowser(); |
| - // PLACEHOLDER: Create some open, empty web states. |
| - WebStateList& webStateList = self.browser->web_state_list(); |
| - for (int i = 0; i < 7; i++) { |
| + BrowserListSessionService* service = |
| + BrowserListSessionServiceFactory::GetForBrowserState(state.browserState); |
| + |
| + if (!service || !service->RestoreSession()) { |
|
sdefresne
2017/05/04 14:52:35
marq: I'm not sure whether this is the correct loc
marq (ping after 24h)
2017/05/09 10:18:59
This seems correct (for now) to me; it's exactly w
sdefresne
2017/05/11 15:57:59
Putting it in a separate ApplicationStep would all
|
| + WebStateList& webStateList = self.browser->web_state_list(); |
| web::WebState::CreateParams webStateCreateParams( |
| self.browser->browser_state()); |
| - std::unique_ptr<web::WebState> webState = |
| - web::WebState::Create(webStateCreateParams); |
| - webStateList.InsertWebState(0, std::move(webState)); |
| + webStateList.InsertWebState(0, web::WebState::Create(webStateCreateParams)); |
| + webStateList.ActivateWebStateAt(0); |
| } |
| - webStateList.ActivateWebStateAt(0); |
| [self start]; |