Title: [135150] trunk/Source/WebKit/chromium
Revision
135150
Author
commit-qu...@webkit.org
Date
2012-11-19 06:43:34 -0800 (Mon, 19 Nov 2012)

Log Message

[chromium] Use devicePixelRatio instead of screen DPI for computing viewport attributes
https://bugs.webkit.org/show_bug.cgi?id=101767

Patch by Sami Kyostila <skyos...@chromium.org> on 2012-11-19
Reviewed by Adam Barth.

Use the newly introduced device scale factor to calculate viewport properties
instead of using the screen DPI. No functional changes, because Chromium
platforms that have VIEWPORT enabled now also initialize the device scale
factor accordingly.

* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):
* tests/WebFrameTest.cpp:

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (135149 => 135150)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-11-19 14:30:46 UTC (rev 135149)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-11-19 14:43:34 UTC (rev 135150)
@@ -1,3 +1,19 @@
+2012-11-19  Sami Kyostila  <skyos...@chromium.org>
+
+        [chromium] Use devicePixelRatio instead of screen DPI for computing viewport attributes
+        https://bugs.webkit.org/show_bug.cgi?id=101767
+
+        Reviewed by Adam Barth.
+
+        Use the newly introduced device scale factor to calculate viewport properties
+        instead of using the screen DPI. No functional changes, because Chromium
+        platforms that have VIEWPORT enabled now also initialize the device scale
+        factor accordingly.
+
+        * src/ChromeClientImpl.cpp:
+        (WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):
+        * tests/WebFrameTest.cpp:
+
 2012-11-18  Kentaro Hara  <hara...@chromium.org>
 
         Unreviewed, rolling out r135047.

Modified: trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp (135149 => 135150)


--- trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp	2012-11-19 14:30:46 UTC (rev 135149)
+++ trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp	2012-11-19 14:43:34 UTC (rev 135150)
@@ -621,10 +621,6 @@
     if (!m_webView->settings()->viewportEnabled() || !m_webView->isFixedLayoutModeEnabled() || !m_webView->client() || !m_webView->page())
         return;
 
-    FrameView* frameView = m_webView->mainFrameImpl()->frameView();
-    int dpi = screenHorizontalDPI(frameView);
-    ASSERT(dpi > 0);
-
     WebViewClient* client = m_webView->client();
     WebRect deviceRect = client->windowRect();
     // If the window size has not been set yet don't attempt to set the viewport
@@ -632,7 +628,7 @@
         return;
 
     Settings* settings = m_webView->page()->settings();
-    float devicePixelRatio = dpi / ViewportArguments::deprecatedTargetDPI;
+    float devicePixelRatio = client->screenInfo().deviceScaleFactor;
     // Call the common viewport computing logic in ViewportArguments.cpp.
     ViewportAttributes computed = computeViewportAttributes(
         arguments, settings->layoutFallbackWidth(), deviceRect.width, deviceRect.height,

Modified: trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp (135149 => 135150)


--- trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp	2012-11-19 14:30:46 UTC (rev 135149)
+++ trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp	2012-11-19 14:43:34 UTC (rev 135150)
@@ -235,7 +235,7 @@
     int viewportHeight = 480;
 
     FixedLayoutTestWebViewClient client;
-    client.m_screenInfo.horizontalDPI = 320;
+    client.m_screenInfo.deviceScaleFactor = 2;
     client.m_windowRect = WebRect(0, 0, viewportWidth, viewportHeight);
 
     WebView* webView = static_cast<WebView*>(FrameTestHelpers::createWebViewAndLoad(m_baseURL + "no_viewport_tag.html", true, 0, &client));
@@ -260,7 +260,7 @@
     registerMockedHttpURLLoad("fixed_layout.html");
 
     FixedLayoutTestWebViewClient client;
-    client.m_screenInfo.horizontalDPI = 160;
+    client.m_screenInfo.deviceScaleFactor = 1;
     int viewportWidth = 640;
     int viewportHeight = 480;
     client.m_windowRect = WebRect(0, 0, viewportWidth, viewportHeight);
@@ -316,7 +316,7 @@
     registerMockedHttpURLLoad("no_scale_for_you.html");
 
     FixedLayoutTestWebViewClient client;
-    client.m_screenInfo.horizontalDPI = 160;
+    client.m_screenInfo.deviceScaleFactor = 1;
     int viewportWidth = 640;
     int viewportHeight = 480;
     client.m_windowRect = WebRect(0, 0, viewportWidth, viewportHeight);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to