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

Unified Diff: chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc

Issue 2630583002: Add setting to isolate zoom changes by default. (Closed)
Patch Set: Add more tests. Created 3 years, 11 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/ui/zoom/chrome_zoom_level_prefs.cc
diff --git a/chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc b/chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc
index 65576ae8c34a1564339f73fcabfc979a81b829a7..88f79b11d7453265f65672a0f3fd162036c3811d 100644
--- a/chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc
+++ b/chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc
@@ -90,6 +90,34 @@ ChromeZoomLevelPrefs::RegisterDefaultZoomLevelCallback(
return default_zoom_changed_callbacks_.Add(callback);
}
+void ChromeZoomLevelPrefs::SetIsOriginScopePref(bool default_per_origin) {
+ if (default_per_origin == GetIsOriginScopePref())
+ return;
+
+ DictionaryPrefUpdate update(
+ pref_service_, prefs::kPartitionDefaultZoomOriginScope);
+ update->SetBoolean(partition_key_, default_per_origin);
+ default_scope_changed_callbacks_.Notify();
+}
+
+bool ChromeZoomLevelPrefs::GetIsOriginScopePref() const {
+ bool default_per_origin = true;
wjmaclean 2017/01/19 21:09:05 Rename |default_per_origin| to something like |is_
Kevin McNee 2017/02/03 22:51:34 Done.
+
+ const base::DictionaryValue* default_zoom_origin_scope_dictionary =
+ pref_service_->GetDictionary(prefs::kPartitionDefaultZoomOriginScope);
+ // If no value has been previously set, |default_per_origin| will be untouched
+ // from the default value we've set above.
+ default_zoom_origin_scope_dictionary->GetBoolean(partition_key_,
+ &default_per_origin);
+ return default_per_origin;
+}
+
+std::unique_ptr<ChromeZoomLevelPrefs::DefaultZoomScopeSubscription>
+ChromeZoomLevelPrefs::RegisterDefaultZoomScopeCallback(
+ const base::Closure& callback) {
+ return default_scope_changed_callbacks_.Add(callback);
+}
+
void ChromeZoomLevelPrefs::OnZoomLevelChanged(
const content::HostZoomMap::ZoomLevelChange& change) {
// If there's a manager to aggregate ZoomLevelChanged events, pass this event

Powered by Google App Engine
This is Rietveld 408576698