Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index e66153301e131007be323524a5fb471c5d6fb51e..13bc4abf846c26cf588895b524418e21fb65dcf1 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -1335,8 +1335,6 @@ bool RenderViewImpl::OnMessageReceived(const IPC::Message& message) { |
IPC_MESSAGE_HANDLER(ViewMsg_Zoom, OnZoom) |
IPC_MESSAGE_HANDLER(ViewMsg_SetZoomLevelForLoadingURL, |
OnSetZoomLevelForLoadingURL) |
- IPC_MESSAGE_HANDLER(ViewMsg_SetZoomLevelForView, |
- OnSetZoomLevelForView) |
IPC_MESSAGE_HANDLER(ViewMsg_SetPageEncoding, OnSetPageEncoding) |
IPC_MESSAGE_HANDLER(ViewMsg_ResetPageEncodingToDefault, |
OnResetPageEncodingToDefault) |
@@ -1730,7 +1728,12 @@ void RenderViewImpl::AttachWebFrameWidget(blink::WebFrameWidget* frame_widget) { |
} |
void RenderViewImpl::SetZoomLevel(double zoom_level) { |
- webview()->setZoomLevel(zoom_level); |
+ // This function may get called multiple times if our page has multiple |
+ // frames, so we early out on subsequent calls so as to only send one |
+ // notification. |
+ if (zoom_level == webview()->zoomLevel()) |
+ return; |
+ |
FOR_EACH_OBSERVER(RenderViewObserver, observers_, OnZoomLevelChanged()); |
} |
@@ -2342,14 +2345,6 @@ void RenderViewImpl::OnSetZoomLevelForLoadingURL(const GURL& url, |
#endif |
} |
-void RenderViewImpl::OnSetZoomLevelForView(bool uses_temporary_zoom_level, |
- double level) { |
- uses_temporary_zoom_level_ = uses_temporary_zoom_level; |
- |
- webview()->hidePopups(); |
- SetZoomLevel(level); |
-} |
- |
void RenderViewImpl::OnSetPageEncoding(const std::string& encoding_name) { |
webview()->setPageEncoding(WebString::fromUTF8(encoding_name)); |
} |
@@ -2537,7 +2532,6 @@ void RenderViewImpl::OnDisableScrollbarsForSmallWindows( |
void RenderViewImpl::OnSetRendererPrefs( |
const RendererPreferences& renderer_prefs) { |
- double old_zoom_level = renderer_preferences_.default_zoom_level; |
std::string old_accept_languages = renderer_preferences_.accept_languages; |
renderer_preferences_ = renderer_prefs; |
@@ -2561,17 +2555,6 @@ void RenderViewImpl::OnSetRendererPrefs( |
} |
#endif // defined(USE_DEFAULT_RENDER_THEME) |
- // If the zoom level for this page matches the old zoom default, and this |
- // is not a plugin, update the zoom level to match the new default. |
- if (webview() && webview()->mainFrame()->isWebLocalFrame() && |
- !webview()->mainFrame()->document().isPluginDocument() && |
- !ZoomValuesEqual(old_zoom_level, |
- renderer_preferences_.default_zoom_level) && |
- ZoomValuesEqual(webview()->zoomLevel(), old_zoom_level)) { |
- SetZoomLevel(renderer_preferences_.default_zoom_level); |
- zoomLevelChanged(); |
- } |
- |
if (webview() && |
old_accept_languages != renderer_preferences_.accept_languages) { |
webview()->acceptLanguagesChanged(); |