Chromium Code Reviews| Index: chrome/browser/extensions/chrome_app_sorting.cc |
| diff --git a/chrome/browser/extensions/chrome_app_sorting.cc b/chrome/browser/extensions/chrome_app_sorting.cc |
| index a11e1a284a01d0432503ac60d9e0f12b96d924c0..8ba541b33de178b2958596ece9e0bd668ac8ba78 100644 |
| --- a/chrome/browser/extensions/chrome_app_sorting.cc |
| +++ b/chrome/browser/extensions/chrome_app_sorting.cc |
| @@ -8,10 +8,13 @@ |
| #include <vector> |
| #include "chrome/browser/chrome_notification_types.h" |
| +#include "chrome/browser/extensions/extension_service.h" |
| #include "chrome/browser/extensions/extension_sync_service.h" |
| +#include "chrome/browser/profiles/profile.h" |
| #include "chrome/common/extensions/extension_constants.h" |
| #include "content/public/browser/notification_service.h" |
| #include "extensions/browser/extension_scoped_prefs.h" |
| +#include "extensions/browser/extension_system.h" |
| #include "extensions/common/constants.h" |
| #include "extensions/common/extension.h" |
| @@ -47,9 +50,9 @@ ChromeAppSorting::AppOrdinals::~AppOrdinals() {} |
| //////////////////////////////////////////////////////////////////////////////// |
| // ChromeAppSorting |
| -ChromeAppSorting::ChromeAppSorting() |
| +ChromeAppSorting::ChromeAppSorting(content::BrowserContext* browser_context) |
| : extension_scoped_prefs_(NULL), |
| - extension_sync_service_(NULL), |
| + browser_context_(browser_context), |
| default_ordinals_created_(false) { |
| } |
| @@ -64,11 +67,6 @@ void ChromeAppSorting::CheckExtensionScopedPrefs() const { |
| CHECK(extension_scoped_prefs_); |
| } |
| -void ChromeAppSorting::SetExtensionSyncService( |
| - ExtensionSyncService* extension_sync_service) { |
| - extension_sync_service_ = extension_sync_service; |
| -} |
| - |
| void ChromeAppSorting::Initialize( |
| const extensions::ExtensionIdList& extension_ids) { |
| CHECK(extension_scoped_prefs_); |
| @@ -543,8 +541,16 @@ void ChromeAppSorting::RemoveOrdinalMapping( |
| } |
| void ChromeAppSorting::SyncIfNeeded(const std::string& extension_id) { |
| - if (extension_sync_service_) |
| - extension_sync_service_->SyncOrderingChange(extension_id); |
| + if (!browser_context_) |
|
not at google - send to devlin
2015/07/23 15:35:11
Comment // null for testing.
Marc Treib
2015/07/24 11:38:34
Done.
|
| + return; |
| + |
| + ExtensionService* service = |
| + ExtensionSystem::Get(browser_context_)->extension_service(); |
| + const Extension* extension = service->GetInstalledExtension(extension_id); |
|
not at google - send to devlin
2015/07/23 15:35:11
Better:
ExtensionRegistry* registry = ExtensionRe
Marc Treib
2015/07/24 11:38:34
Done.
|
| + if (extension) { |
| + Profile* profile = Profile::FromBrowserContext(browser_context_); |
| + ExtensionSyncService::Get(profile)->SyncExtensionChangeIfNeeded(*extension); |
| + } |
| } |
| void ChromeAppSorting::CreateDefaultOrdinals() { |