Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2960)

Unified Diff: chrome/browser/extensions/extension_service.cc

Issue 17038002: Separate the NTP app ordering from the app list app ordering (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: revert lazy initialzation Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_service.cc
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index 2d0a040430758c1339aae98ed763a5ff5b917d34..ae55b10bd59052823b72e9862cd952c751dbb9da 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -431,6 +431,7 @@ ExtensionService::ExtensionService(Profile* profile,
// Set this as the ExtensionService for extension sorting to ensure it
// cause syncs if required.
extension_prefs_->extension_sorting()->SetExtensionService(this);
+ extension_prefs_->app_list_extension_sorting()->SetExtensionService(this);
is_first_run_ = !extension_prefs_->SetAlertSystemFirstRun();
@@ -1387,6 +1388,7 @@ syncer::SyncError ExtensionService::ProcessSyncChanges(
}
extension_prefs()->extension_sorting()->FixNTPOrdinalCollisions();
+ extension_prefs()->app_list_extension_sorting()->FixSyncCollisions();
return syncer::SyncError();
}
@@ -1406,7 +1408,9 @@ extensions::AppSyncData ExtensionService::GetAppSyncData(
IsIncognitoEnabled(extension.id()),
extension_prefs_->extension_sorting()->GetAppLaunchOrdinal(
extension.id()),
- extension_prefs_->extension_sorting()->GetPageOrdinal(extension.id()));
+ extension_prefs_->extension_sorting()->GetPageOrdinal(extension.id()),
+ extension_prefs_->app_list_extension_sorting()->
+ GetAppListOrdinalFromPrefs(extension.id()));
}
std::vector<extensions::ExtensionSyncData>
@@ -1472,6 +1476,10 @@ bool ExtensionService::ProcessAppSyncData(
id,
app_sync_data.page_ordinal());
}
+ if (app_sync_data.app_list_ordinal().IsValid()) {
+ extension_prefs_->app_list_extension_sorting()->
+ UpdateAppListOrdinalFromSync(id, app_sync_data.app_list_ordinal());
+ }
if (!ProcessExtensionSyncDataHelper(app_sync_data.extension_sync_data(),
syncer::APPS)) {
@@ -2129,6 +2137,10 @@ void ExtensionService::AddExtension(const Extension* extension) {
}
extension_prefs_->extension_sorting()->EnsureValidOrdinals(
extension->id(), syncer::StringOrdinal());
+ AppListExtensionSorting* ordering =
+ extension_prefs_->app_list_extension_sorting();
+ if (!ordering->Contains(extension->id()))
+ ordering->InsertAtBack(extension->id());
}
extensions_.Insert(extension);

Powered by Google App Engine
This is Rietveld 408576698