Remove support for "desktop-width" in the viewport meta tag
authorkenneth@webkit.org <kenneth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 7 Nov 2012 08:54:46 +0000 (08:54 +0000)
committerkenneth@webkit.org <kenneth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 7 Nov 2012 08:54:46 +0000 (08:54 +0000)
https://bugs.webkit.org/show_bug.cgi?id=101217

Reviewed by Gyuyoung Kim.

Source/WebCore:

This has been removed from the CSS Device Adaptation spec, and
should be safe to remove as it is not documented anywhere (neither
in blog posts).

The viewport meta should only support the legacy features.

* dom/ViewportArguments.cpp:
(WebCore::computeViewportAttributes):
(WebCore::findSizeValue):
(WebCore::findScaleValue):
(WebCore::findUserScalableValue):
* dom/ViewportArguments.h:

Source/WebKit/blackberry:

Sync WebViewportArguments enum with the one in
WebCore::ViewportArguments

* Api/WebViewportArguments.h:

Source/WebKit/chromium:

Remove some code trying to use the set desktop width (say 980) for
sites not using a viewport meta element.

Removing this code should have no effect as it ends up being set
to desktop width in that case anyway, by the ViewportArguments
algorithm.

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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@133729 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/dom/ViewportArguments.cpp
Source/WebCore/dom/ViewportArguments.h
Source/WebKit/blackberry/Api/WebViewportArguments.h
Source/WebKit/blackberry/ChangeLog
Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/src/ChromeClientImpl.cpp

index 6774cfe7f1aceda08f5256e4e05d4e5262a31894..15cfb0a1e8438f3897e6231098cbf0ea6d24bc78 100644 (file)
@@ -1,3 +1,23 @@
+2012-11-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
+
+        Remove support for "desktop-width" in the viewport meta tag
+        https://bugs.webkit.org/show_bug.cgi?id=101217
+
+        Reviewed by Gyuyoung Kim.
+
+        This has been removed from the CSS Device Adaptation spec, and
+        should be safe to remove as it is not documented anywhere (neither
+        in blog posts).
+
+        The viewport meta should only support the legacy features.
+
+        * dom/ViewportArguments.cpp:
+        (WebCore::computeViewportAttributes):
+        (WebCore::findSizeValue):
+        (WebCore::findScaleValue):
+        (WebCore::findUserScalableValue):
+        * dom/ViewportArguments.h:
+
 2012-11-07  Dominik Röttsches  <dominik.rottsches@intel.com>
 
         [EFL] Fix execution of exif-orientation-image-document.html on EFL Wk2 bot
index 119122d208a2422d0e2ad38d348c223babdf919e..ae18789195f33af7c5d21284d7ab0391e7f2ebbc 100644 (file)
@@ -61,9 +61,6 @@ ViewportAttributes computeViewportAttributes(ViewportArguments args, int desktop
     }
 
     switch (int(args.width)) {
-    case ViewportArguments::ValueDesktopWidth:
-        args.width = desktopWidth;
-        break;
     case ViewportArguments::ValueDeviceWidth:
         args.width = deviceWidth;
         break;
@@ -73,9 +70,6 @@ ViewportAttributes computeViewportAttributes(ViewportArguments args, int desktop
     }
 
     switch (int(args.height)) {
-    case ViewportArguments::ValueDesktopWidth:
-        args.height = desktopWidth;
-        break;
     case ViewportArguments::ValueDeviceWidth:
         args.height = deviceWidth;
         break;
@@ -218,8 +212,6 @@ static float findSizeValue(const String& keyString, const String& valueString, D
     // 3) device-width and device-height are used as keywords.
     // 4) Other keywords and unknown values translate to 0.0.
 
-    if (equalIgnoringCase(valueString, "desktop-width"))
-        return ViewportArguments::ValueDesktopWidth;
     if (equalIgnoringCase(valueString, "device-width"))
         return ViewportArguments::ValueDeviceWidth;
     if (equalIgnoringCase(valueString, "device-height"))
@@ -245,8 +237,6 @@ static float findScaleValue(const String& keyString, const String& valueString,
         return 1;
     if (equalIgnoringCase(valueString, "no"))
         return 0;
-    if (equalIgnoringCase(valueString, "desktop-width"))
-        return 10;
     if (equalIgnoringCase(valueString, "device-width"))
         return 10;
     if (equalIgnoringCase(valueString, "device-height"))
@@ -273,8 +263,6 @@ static float findUserScalableValue(const String& keyString, const String& valueS
         return 1;
     if (equalIgnoringCase(valueString, "no"))
         return 0;
-    if (equalIgnoringCase(valueString, "desktop-width"))
-        return 1;
     if (equalIgnoringCase(valueString, "device-width"))
         return 1;
     if (equalIgnoringCase(valueString, "device-height"))
index 6bfeb0a4394c7934bf346072979e08913dc2ca0d..32139eea82566ed6ba60373a6227eb3866ce6de6 100644 (file)
@@ -68,9 +68,8 @@ struct ViewportArguments {
 
     enum {
         ValueAuto = -1,
-        ValueDesktopWidth = -2,
-        ValueDeviceWidth = -3,
-        ValueDeviceHeight = -4,
+        ValueDeviceWidth = -2,
+        ValueDeviceHeight = -3,
     };
 
     ViewportArguments(Type type = Implicit)
index e49c25a5800826e9191455735deea56d91d803e2..4599b971595a54e03e72fe36b015118257b4429e 100644 (file)
@@ -47,9 +47,8 @@ public:
     // This matches the enum found in WebCore::ViewportArguments
     enum {
         ValueAuto = -1,
-        ValueDesktopWidth = -2,
-        ValueDeviceWidth = -3,
-        ValueDeviceHeight = -4,
+        ValueDeviceWidth = -2,
+        ValueDeviceHeight = -3,
     };
 
     float initialScale() const;
index bb888ba1b79ce9af3699dde5046108ca346cd3e9..26c3854b7a486d023a9e3f765e6fe199b29cdb25 100644 (file)
@@ -1,3 +1,15 @@
+2012-11-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
+
+        Remove support for "desktop-width" in the viewport meta tag
+        https://bugs.webkit.org/show_bug.cgi?id=101217
+
+        Reviewed by Gyuyoung Kim.
+
+        Sync WebViewportArguments enum with the one in
+        WebCore::ViewportArguments
+
+        * Api/WebViewportArguments.h:
+
 2012-11-06  Genevieve Mak  <gmak@rim.com>
 
         [BlackBerry] Crash in InRegionScrollerPrivate.
index 6a63f2e4e20e3ed3c48e48d5deac65020002f22b..0ac7a70021cd58d365f563d1a49d12bf8f403c17 100644 (file)
@@ -1,3 +1,20 @@
+2012-11-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
+
+        Remove support for "desktop-width" in the viewport meta tag
+        https://bugs.webkit.org/show_bug.cgi?id=101217
+
+        Reviewed by Gyuyoung Kim.
+
+        Remove some code trying to use the set desktop width (say 980) for
+        sites not using a viewport meta element.
+
+        Removing this code should have no effect as it ends up being set
+        to desktop width in that case anyway, by the ViewportArguments
+        algorithm.
+
+        * src/ChromeClientImpl.cpp:
+        (WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):
+
 2012-11-06  Dan Beam  <dbeam@chromium.org>
 
         Enable REQUEST_AUTOCOMPLETE for chromium port
index 3c8f04349be1a3bce0046f4f5eac85cdbac3c06e..94959380a606d9d12e7bf97552afc4ba6ccd9be6 100644 (file)
@@ -615,13 +615,6 @@ void ChromeClientImpl::dispatchViewportPropertiesDidChange(const ViewportArgumen
     if (!m_webView->settings()->viewportEnabled() || !m_webView->isFixedLayoutModeEnabled() || !m_webView->client() || !m_webView->page())
         return;
 
-    ViewportArguments args;
-    if (arguments == args) {
-        // Default viewport arguments passed in. This is a signal to reset the viewport.
-        args.width = ViewportArguments::ValueDesktopWidth;
-    } else
-        args = arguments;
-
     FrameView* frameView = m_webView->mainFrameImpl()->frameView();
     int dpi = screenHorizontalDPI(frameView);
     ASSERT(dpi > 0);
@@ -636,7 +629,7 @@ void ChromeClientImpl::dispatchViewportPropertiesDidChange(const ViewportArgumen
     float devicePixelRatio = dpi / ViewportArguments::deprecatedTargetDPI;
     // Call the common viewport computing logic in ViewportArguments.cpp.
     ViewportAttributes computed = computeViewportAttributes(
-        args, settings->layoutFallbackWidth(), deviceRect.width, deviceRect.height,
+        arguments, settings->layoutFallbackWidth(), deviceRect.width, deviceRect.height,
         devicePixelRatio, IntSize(deviceRect.width, deviceRect.height));
 
     restrictScaleFactorToInitialScaleIfNotUserScalable(computed);