diff options
| author | Ben Murdoch <benm@google.com> | 2010-11-18 18:32:45 +0000 |
|---|---|---|
| committer | Ben Murdoch <benm@google.com> | 2010-11-18 18:38:07 +0000 |
| commit | 513209b27ff55e2841eac0e4120199c23acce758 (patch) | |
| tree | aeba30bb08c5f47c57003544e378a377c297eee6 /chrome/browser/host_zoom_map.cc | |
| parent | 164f7496de0fbee436b385a79ead9e3cb81a50c1 (diff) | |
| download | external_chromium-513209b27ff55e2841eac0e4120199c23acce758.zip external_chromium-513209b27ff55e2841eac0e4120199c23acce758.tar.gz external_chromium-513209b27ff55e2841eac0e4120199c23acce758.tar.bz2 | |
Merge Chromium at r65505: Initial merge by git.
Change-Id: I31d8f1d8cd33caaf7f47ffa7350aef42d5fbdb45
Diffstat (limited to 'chrome/browser/host_zoom_map.cc')
| -rw-r--r-- | chrome/browser/host_zoom_map.cc | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/chrome/browser/host_zoom_map.cc b/chrome/browser/host_zoom_map.cc index b9d8d24..19e55bb 100644 --- a/chrome/browser/host_zoom_map.cc +++ b/chrome/browser/host_zoom_map.cc @@ -29,6 +29,8 @@ HostZoomMap::HostZoomMap(Profile* profile) : profile_(profile), updating_preferences_(false) { Load(); + default_zoom_level_ = + profile_->GetPrefs()->GetReal(prefs::kDefaultZoomLevel); registrar_.Add(this, NotificationType::PROFILE_DESTROYED, Source<Profile>(profile)); // Don't observe pref changes (e.g. from sync) in Incognito; once we create @@ -37,6 +39,7 @@ HostZoomMap::HostZoomMap(Profile* profile) if (!profile_->IsOffTheRecord()) { pref_change_registrar_.Init(profile_->GetPrefs()); pref_change_registrar_.Add(prefs::kPerHostZoomLevels, this); + pref_change_registrar_.Add(prefs::kDefaultZoomLevel, this); } registrar_.Add( @@ -94,7 +97,7 @@ double HostZoomMap::GetZoomLevel(const GURL& url) const { std::string host(net::GetHostOrSpecFromURL(url)); AutoLock auto_lock(lock_); HostZoomLevels::const_iterator i(host_zoom_levels_.find(host)); - return (i == host_zoom_levels_.end()) ? 0 : i->second; + return (i == host_zoom_levels_.end()) ? default_zoom_level_ : i->second; } void HostZoomMap::SetZoomLevel(const GURL& url, double level) { @@ -106,7 +109,7 @@ void HostZoomMap::SetZoomLevel(const GURL& url, double level) { { AutoLock auto_lock(lock_); - if (level == 0) + if (level == default_zoom_level_) host_zoom_levels_.erase(host); else host_zoom_levels_[host] = level; @@ -126,7 +129,7 @@ void HostZoomMap::SetZoomLevel(const GURL& url, double level) { ScopedPrefUpdate update(profile_->GetPrefs(), prefs::kPerHostZoomLevels); DictionaryValue* host_zoom_dictionary = profile_->GetPrefs()->GetMutableDictionary(prefs::kPerHostZoomLevels); - if (level == 0) { + if (level == default_zoom_level_) { host_zoom_dictionary->RemoveWithoutPathExpansion(host, NULL); } else { host_zoom_dictionary->SetWithoutPathExpansion( @@ -240,6 +243,10 @@ void HostZoomMap::Observe( std::string* name = Details<std::string>(details).ptr(); if (prefs::kPerHostZoomLevels == *name) Load(); + else if (prefs::kDefaultZoomLevel == *name) { + default_zoom_level_ = + profile_->GetPrefs()->GetReal(prefs::kDefaultZoomLevel); + } } break; } |
