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

Unified Diff: content/browser/host_zoom_map_impl.cc

Issue 809223006: Check temporary zoom status when sending zoom level in navigation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix indents, add test comments. Created 5 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
« no previous file with comments | « content/browser/host_zoom_map_impl.h ('k') | content/browser/host_zoom_map_impl_browsertest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/host_zoom_map_impl.cc
diff --git a/content/browser/host_zoom_map_impl.cc b/content/browser/host_zoom_map_impl.cc
index b6595b97bd1de766c53569d57591f1bef0d728e2..4260bbf2397444f1a79a2e64e840adaef273a6d3 100644
--- a/content/browser/host_zoom_map_impl.cc
+++ b/content/browser/host_zoom_map_impl.cc
@@ -136,6 +136,11 @@ void HostZoomMapImpl::CopyFrom(HostZoomMap* copy_interface) {
double HostZoomMapImpl::GetZoomLevelForHost(const std::string& host) const {
base::AutoLock auto_lock(lock_);
+ return GetZoomLevelForHostInternal(host);
+}
+
+double HostZoomMapImpl::GetZoomLevelForHostInternal(
+ const std::string& host) const {
HostZoomLevels::const_iterator i(host_zoom_levels_.find(host));
return (i == host_zoom_levels_.end()) ? default_zoom_level_ : i->second;
}
@@ -156,20 +161,25 @@ bool HostZoomMapImpl::HasZoomLevel(const std::string& scheme,
return i != zoom_levels.end();
}
-double HostZoomMapImpl::GetZoomLevelForHostAndScheme(
+double HostZoomMapImpl::GetZoomLevelForHostAndSchemeInternal(
const std::string& scheme,
const std::string& host) const {
- {
- base::AutoLock auto_lock(lock_);
- SchemeHostZoomLevels::const_iterator scheme_iterator(
- scheme_host_zoom_levels_.find(scheme));
- if (scheme_iterator != scheme_host_zoom_levels_.end()) {
- HostZoomLevels::const_iterator i(scheme_iterator->second.find(host));
- if (i != scheme_iterator->second.end())
- return i->second;
- }
+ SchemeHostZoomLevels::const_iterator scheme_iterator(
+ scheme_host_zoom_levels_.find(scheme));
+ if (scheme_iterator != scheme_host_zoom_levels_.end()) {
+ HostZoomLevels::const_iterator i(scheme_iterator->second.find(host));
+ if (i != scheme_iterator->second.end())
+ return i->second;
}
- return GetZoomLevelForHost(host);
+
+ return GetZoomLevelForHostInternal(host);
+}
+
+double HostZoomMapImpl::GetZoomLevelForHostAndScheme(
+ const std::string& scheme,
+ const std::string& host) const {
+ base::AutoLock auto_lock(lock_);
+ return GetZoomLevelForHostAndSchemeInternal(scheme, host);
}
HostZoomMap::ZoomLevelVector HostZoomMapImpl::GetAllZoomLevels() const {
@@ -365,6 +375,19 @@ void HostZoomMapImpl::SetTemporaryZoomLevel(int render_process_id,
zoom_level_changed_callbacks_.Notify(change);
}
+double HostZoomMapImpl::GetZoomLevelForView(const GURL& url,
+ int render_process_id,
+ int render_view_id) const {
+ RenderViewKey key(render_process_id, render_view_id);
+ base::AutoLock auto_lock(lock_);
+
+ if (ContainsKey(temporary_zoom_levels_, key))
+ return temporary_zoom_levels_.find(key)->second;
+
+ return GetZoomLevelForHostAndSchemeInternal(url.scheme(),
+ net::GetHostOrSpecFromURL(url));
+}
+
void HostZoomMapImpl::Observe(int type,
const NotificationSource& source,
const NotificationDetails& details) {
« no previous file with comments | « content/browser/host_zoom_map_impl.h ('k') | content/browser/host_zoom_map_impl_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698