Index: extensions/browser/extension_prefs.cc |
diff --git a/extensions/browser/extension_prefs.cc b/extensions/browser/extension_prefs.cc |
index 79bd5472555310e8566fd98aa23074017c5ee2bd..2e5cd679a6e7570ce3b6cda267509d1944bae7e1 100644 |
--- a/extensions/browser/extension_prefs.cc |
+++ b/extensions/browser/extension_prefs.cc |
@@ -192,6 +192,10 @@ const char kPrefDoNotSync[] = "do_not_sync"; |
const char kCorruptedDisableCount[] = "extensions.corrupted_disable_count"; |
+// A boolean preference that indicates whether the extension has local changes |
+// that need to be synced. Default value is false. |
+const char kPrefNeedsSync[] = "needs_sync"; |
+ |
// Provider of write access to a dictionary storing extension prefs. |
class ScopedExtensionPrefUpdate : public DictionaryPrefUpdate { |
public: |
@@ -1852,6 +1856,20 @@ void ExtensionPrefs::IncrementCorruptedDisableCount() { |
prefs_->SetInteger(kCorruptedDisableCount, count + 1); |
} |
+bool ExtensionPrefs::NeedsSync(const std::string& extension_id) const { |
+ bool needs_sync; |
+ if (!ReadPrefAsBoolean(extension_id, kPrefNeedsSync, &needs_sync)) |
+ return false; |
+ |
+ return needs_sync; |
not at google - send to devlin
2015/07/15 20:27:57
Looks like there is a helper to simplify this, "Re
Marc Treib
2015/07/16 09:22:34
Indeed! Thanks, done.
|
+} |
+ |
+void ExtensionPrefs::SetNeedsSync(const std::string& extension_id, |
+ bool needs_sync) { |
+ UpdateExtensionPref(extension_id, kPrefNeedsSync, |
+ needs_sync ? new base::FundamentalValue(true) : nullptr); |
+} |
+ |
ExtensionPrefs::ExtensionPrefs( |
PrefService* prefs, |
const base::FilePath& root_dir, |