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

Unified Diff: chrome/browser/prefs/tracked/tracked_split_preference.cc

Issue 151003004: Add an automatic settings reset banner. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase on top of transaction patch. Created 6 years, 10 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/prefs/tracked/tracked_split_preference.cc
diff --git a/chrome/browser/prefs/tracked/tracked_split_preference.cc b/chrome/browser/prefs/tracked/tracked_split_preference.cc
index acd1b15141e9a234e4c92c0621e40e7108fff5fd..e40990d1e92b12943e66c355da278f3d82c662c2 100644
--- a/chrome/browser/prefs/tracked/tracked_split_preference.cc
+++ b/chrome/browser/prefs/tracked/tracked_split_preference.cc
@@ -30,7 +30,7 @@ void TrackedSplitPreference::OnNewValue(
transaction->StoreSplitHash(pref_path_, dict_value);
}
-void TrackedSplitPreference::EnforceAndReport(
+bool TrackedSplitPreference::EnforceAndReport(
base::DictionaryValue* pref_store_contents,
PrefHashStoreTransaction* transaction) const {
base::DictionaryValue* dict_value = NULL;
@@ -38,7 +38,7 @@ void TrackedSplitPreference::EnforceAndReport(
pref_store_contents->Get(pref_path_, NULL)) {
// There should be a dictionary or nothing at |pref_path_|.
NOTREACHED();
- return;
+ return false;
}
std::vector<std::string> invalid_keys;
@@ -54,6 +54,7 @@ void TrackedSplitPreference::EnforceAndReport(
helper_.GetAction(value_state);
helper_.ReportAction(reset_action);
+ bool was_reset = false;
if (reset_action == TrackedPreferenceHelper::DO_RESET) {
if (value_state == PrefHashStoreTransaction::CHANGED) {
DCHECK(!invalid_keys.empty());
@@ -65,6 +66,7 @@ void TrackedSplitPreference::EnforceAndReport(
} else {
pref_store_contents->RemovePath(pref_path_, NULL);
}
+ was_reset = true;
}
if (value_state != PrefHashStoreTransaction::UNCHANGED) {
@@ -73,4 +75,6 @@ void TrackedSplitPreference::EnforceAndReport(
pref_store_contents->GetDictionary(pref_path_, &new_dict_value);
transaction->StoreSplitHash(pref_path_, new_dict_value);
}
+
+ return was_reset;
}

Powered by Google App Engine
This is Rietveld 408576698