Chromium Code Reviews| Index: chrome/browser/sessions/tab_restore_service_factory.cc |
| diff --git a/chrome/browser/sessions/tab_restore_service_factory.cc b/chrome/browser/sessions/tab_restore_service_factory.cc |
| index 3c457ed9809b9c4500abec38f5dee5fa0a4336bc..0165d467f72a7c52545b9229a101476078dc20ce 100644 |
| --- a/chrome/browser/sessions/tab_restore_service_factory.cc |
| +++ b/chrome/browser/sessions/tab_restore_service_factory.cc |
| @@ -5,9 +5,15 @@ |
| #include "chrome/browser/sessions/tab_restore_service_factory.h" |
| #include "chrome/browser/profiles/profile.h" |
| -#include "chrome/browser/sessions/tab_restore_service.h" |
| +#include "chrome/browser/sessions/chrome_tab_restore_service_client.h" |
| #include "components/keyed_service/content/browser_context_dependency_manager.h" |
| +#if defined(OS_ANDROID) |
| +#include "chrome/browser/sessions/in_memory_tab_restore_service.h" |
| +#else |
| +#include "chrome/browser/sessions/persistent_tab_restore_service.h" |
| +#endif |
| + |
| // static |
| TabRestoreService* TabRestoreServiceFactory::GetForProfile(Profile* profile) { |
| return static_cast<TabRestoreService*>( |
| @@ -44,3 +50,16 @@ TabRestoreServiceFactory::~TabRestoreServiceFactory() { |
| bool TabRestoreServiceFactory::ServiceIsNULLWhileTesting() const { |
| return true; |
| } |
| + |
| +KeyedService* TabRestoreServiceFactory::BuildServiceInstanceFor( |
| + content::BrowserContext* browser_context) const { |
| + Profile* profile = Profile::FromBrowserContext(browser_context); |
| + scoped_ptr<sessions::TabRestoreServiceClient> client( |
| + new ChromeTabRestoreServiceClient(profile)); |
| + |
| +#if defined(OS_ANDROID) |
| + return new InMemoryTabRestoreService(profile, NULL); |
|
sky
2015/09/08 23:44:59
NULL->nullptr (you need to update a number of plac
blundell
2015/09/09 10:27:10
Done.
|
| +#else |
| + return new PersistentTabRestoreService(profile, client.Pass(), NULL); |
| +#endif |
| +} |