Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 8dde7b7da823272dab6b3713f96a58f10274d5a8..33b11ce3fc2eba6b1a5cf3bc4b0f8e27f74bd5b5 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -2351,6 +2351,13 @@ void RenderViewImpl::UpdateTargetURL(const GURL& url, |
} |
} |
+void RenderViewImpl::WebPreferencesUpdated(const WebPreferences& old_prefs) { |
+ if (old_prefs.initialize_at_minimum_page_scale != |
+ webkit_preferences_.initialize_at_minimum_page_scale) { |
+ webview()->resetScrollAndScaleState(); |
+ } |
+} |
+ |
gfx::RectF RenderViewImpl::ClientRectToPhysicalWindowRect( |
const gfx::RectF& rect) const { |
gfx::RectF window_rect = rect; |
@@ -5292,8 +5299,10 @@ void RenderViewImpl::OnDragSourceSystemDragEnded() { |
} |
void RenderViewImpl::OnUpdateWebPreferences(const WebPreferences& prefs) { |
+ const WebPreferences old_preferences = webkit_preferences_; |
webkit_preferences_ = prefs; |
webkit_preferences_.Apply(webview()); |
+ WebPreferencesUpdated(old_preferences); |
} |
void RenderViewImpl::OnUpdateTimezone() { |