diff options
author | tdresser@chromium.org <tdresser@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-01 15:40:09 +0000 |
---|---|---|
committer | tdresser@chromium.org <tdresser@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-01 15:40:09 +0000 |
commit | 43d9d78406fe298baa50121d75c5d369f47b053d (patch) | |
tree | 00e6491ac567d37ee453302357c2b301007038f4 | |
parent | a39dc844ffe627284581a65c11d62e6a585caf08 (diff) | |
download | chromium_src-43d9d78406fe298baa50121d75c5d369f47b053d.zip chromium_src-43d9d78406fe298baa50121d75c5d369f47b053d.tar.gz chromium_src-43d9d78406fe298baa50121d75c5d369f47b053d.tar.bz2 |
Pass DefaultDeviceScaleFactor to webkit
DefaultDeviceScaleFactor will be based solely on the screen DPI, as opposed to DeviceScaleFactor,
which incorporates information from the viewport tag.
This is a follow-up to: https://bugs.webkit.org/show_bug.cgi?id=79534
BUG=115231
TEST=None
Review URL: http://codereview.chromium.org/9500015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124411 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | content/browser/renderer_host/render_process_host_impl.cc | 1 | ||||
-rw-r--r-- | content/browser/tab_contents/tab_contents.cc | 8 | ||||
-rw-r--r-- | content/common/view_messages.h | 1 | ||||
-rw-r--r-- | content/renderer/render_view_impl.cc | 7 | ||||
-rw-r--r-- | content/renderer/render_view_impl.h | 2 | ||||
-rw-r--r-- | webkit/glue/webpreferences.cc | 2 | ||||
-rw-r--r-- | webkit/glue/webpreferences.h | 1 |
7 files changed, 14 insertions, 8 deletions
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc index 2717a4e..2926a90 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc @@ -649,7 +649,6 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( switches::kAuditAllHandles, switches::kAuditHandles, switches::kChromeFrame, - switches::kDefaultDeviceScaleFactor, switches::kDisable3DAPIs, switches::kDisableAcceleratedCompositing, switches::kDisableApplicationCache, diff --git a/content/browser/tab_contents/tab_contents.cc b/content/browser/tab_contents/tab_contents.cc index 6e2a2e3..c760413 100644 --- a/content/browser/tab_contents/tab_contents.cc +++ b/content/browser/tab_contents/tab_contents.cc @@ -10,6 +10,7 @@ #include "base/metrics/histogram.h" #include "base/metrics/stats_counters.h" #include "base/string16.h" +#include "base/string_number_conversions.h" #include "base/string_util.h" #include "base/time.h" #include "base/utf_string_conversions.h" @@ -460,6 +461,13 @@ WebPreferences TabContents::GetWebkitPrefs(RenderViewHost* rvh, prefs.accelerated_2d_canvas_enabled = false; } + int default_device_scale_factor; + base::StringToInt(command_line.GetSwitchValueASCII( + switches::kDefaultDeviceScaleFactor), + &default_device_scale_factor); + + prefs.default_device_scale_factor = default_device_scale_factor; + content::GetContentClient()->browser()->OverrideWebkitPrefs(rvh, &prefs); return prefs; diff --git a/content/common/view_messages.h b/content/common/view_messages.h index 856288a..851dde9 100644 --- a/content/common/view_messages.h +++ b/content/common/view_messages.h @@ -140,6 +140,7 @@ IPC_STRUCT_TRAITS_BEGIN(WebPreferences) IPC_STRUCT_TRAITS_MEMBER(fantasy_font_family_map) IPC_STRUCT_TRAITS_MEMBER(default_font_size) IPC_STRUCT_TRAITS_MEMBER(default_fixed_font_size) + IPC_STRUCT_TRAITS_MEMBER(default_device_scale_factor) IPC_STRUCT_TRAITS_MEMBER(minimum_font_size) IPC_STRUCT_TRAITS_MEMBER(minimum_logical_font_size) IPC_STRUCT_TRAITS_MEMBER(default_encoding) diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc index 8a65eb4..f560e29 100644 --- a/content/renderer/render_view_impl.cc +++ b/content/renderer/render_view_impl.cc @@ -540,9 +540,6 @@ RenderViewImpl::RenderViewImpl( webview()->enableFixedLayoutMode(enable_fixed_layout); if (enable_fixed_layout) webview()->settings()->setFixedElementsLayoutRelativeToFrame(true); - base::StringToInt(command_line.GetSwitchValueASCII( - switches::kDefaultDeviceScaleFactor), - &default_device_scale_factor_); content::GetContentClient()->renderer()->RenderViewCreated(this); } @@ -4417,9 +4414,9 @@ void RenderViewImpl::OnResize(const gfx::Size& new_size, bool is_fullscreen) { if (webview()) { // This setting has no effect if fixed layout is not enabled. - if (default_device_scale_factor_) + if (webkit_preferences_.default_device_scale_factor) webview()->settings()->setLayoutFallbackWidth( - new_size.width() / default_device_scale_factor_); + new_size.width() / webkit_preferences_.default_device_scale_factor); webview()->hidePopups(); if (send_preferred_size_changes_) { webview()->mainFrame()->setCanHaveScrollbars( diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h index f52ac68..f912804 100644 --- a/content/renderer/render_view_impl.h +++ b/content/renderer/render_view_impl.h @@ -1020,8 +1020,6 @@ class RenderViewImpl : public RenderWidget, // should be drawn. gfx::Size disable_scrollbars_size_limit_; - int default_device_scale_factor_; - // Loading state ------------------------------------------------------------- // True if the top level frame is currently being loaded. diff --git a/webkit/glue/webpreferences.cc b/webkit/glue/webpreferences.cc index c1552d1..f30f594 100644 --- a/webkit/glue/webpreferences.cc +++ b/webkit/glue/webpreferences.cc @@ -36,6 +36,7 @@ WebPreferences::WebPreferences() default_fixed_font_size(13), minimum_font_size(0), minimum_logical_font_size(6), + default_device_scale_factor(1), default_encoding("ISO-8859-1"), javascript_enabled(true), web_security_enabled(true), @@ -186,6 +187,7 @@ void WebPreferences::Apply(WebView* web_view) const { settings->setDefaultFixedFontSize(default_fixed_font_size); settings->setMinimumFontSize(minimum_font_size); settings->setMinimumLogicalFontSize(minimum_logical_font_size); + settings->setDefaultDeviceScaleFactor(default_device_scale_factor); settings->setDefaultTextEncodingName(ASCIIToUTF16(default_encoding)); settings->setJavaScriptEnabled(javascript_enabled); settings->setWebSecurityEnabled(web_security_enabled); diff --git a/webkit/glue/webpreferences.h b/webkit/glue/webpreferences.h index e3a9664..08b0784 100644 --- a/webkit/glue/webpreferences.h +++ b/webkit/glue/webpreferences.h @@ -43,6 +43,7 @@ struct WEBKIT_GLUE_EXPORT WebPreferences { int default_fixed_font_size; int minimum_font_size; int minimum_logical_font_size; + int default_device_scale_factor; std::string default_encoding; bool javascript_enabled; bool web_security_enabled; |