Chromium Code Reviews| Index: chrome/browser/bookmarks/bookmark_model_factory.cc |
| diff --git a/chrome/browser/bookmarks/bookmark_model_factory.cc b/chrome/browser/bookmarks/bookmark_model_factory.cc |
| index 079bf75634ea5624a808522027f5303a8ee5bf0e..044527b5beffe7dec1976df516e9919d7be289f2 100644 |
| --- a/chrome/browser/bookmarks/bookmark_model_factory.cc |
| +++ b/chrome/browser/bookmarks/bookmark_model_factory.cc |
| @@ -26,6 +26,11 @@ |
| #include "components/undo/bookmark_undo_service.h" |
| #include "content/public/browser/browser_thread.h" |
| +#if BUILDFLAG(ANDROID_JAVA_UI) |
| +#include "chrome/browser/android/offline_pages/offline_page_bookmark_observer.h" |
| +#include "chrome/browser/android/offline_pages/offline_page_model_factory.h" |
|
Dmitry Titov
2016/08/26 23:08:59
I think you don't use factory here.
romax
2016/08/29 22:58:02
Done.
|
| +#endif |
| + |
| using bookmarks::BookmarkModel; |
| // static |
| @@ -62,15 +67,23 @@ BookmarkModelFactory::~BookmarkModelFactory() { |
| KeyedService* BookmarkModelFactory::BuildServiceInstanceFor( |
| content::BrowserContext* context) const { |
| Profile* profile = Profile::FromBrowserContext(context); |
| - BookmarkModel* bookmark_model = |
| - new BookmarkModel(base::WrapUnique(new ChromeBookmarkClient( |
| - profile, ManagedBookmarkServiceFactory::GetForProfile(profile)))); |
| + std::unique_ptr<bookmarks::OwnedBookmarkModelObserver> offline_page_observer = |
| + nullptr; |
| +#if BUILDFLAG(ANDROID_JAVA_UI) |
| + offline_page_observer = |
| + base::MakeUnique<offline_pages::OfflinePageBookmarkObserver>(profile); |
| +#endif // BUILDFLAG(ANDROID_JAVA_UI) |
| + BookmarkModel* bookmark_model = new BookmarkModel( |
| + base::WrapUnique(new ChromeBookmarkClient( |
| + profile, ManagedBookmarkServiceFactory::GetForProfile(profile))), |
| + std::move(offline_page_observer)); |
| bookmark_model->Load(profile->GetPrefs(), profile->GetPath(), |
| StartupTaskRunnerServiceFactory::GetForProfile(profile) |
| ->GetBookmarkTaskRunner(), |
| content::BrowserThread::GetTaskRunnerForThread( |
| content::BrowserThread::UI)); |
| bool register_bookmark_undo_service_as_observer = true; |
| + |
| #if !BUILDFLAG(ANDROID_JAVA_UI) |
| register_bookmark_undo_service_as_observer = |
| base::CommandLine::ForCurrentProcess()->HasSwitch( |