Changeset 119256 in webkit
- Timestamp:
- Jun 1, 2012 11:24:02 AM (12 years ago)
- Location:
- trunk
- Files:
-
- 26 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r119255 r119256 1 2012-06-01 Hugo Parente Lima <hugo.lima@openbossa.org> 2 3 Improve handling of legacy viewport meta tags 4 https://bugs.webkit.org/show_bug.cgi?id=55874 5 6 Reviewed by Adam Barth. 7 8 Add tests and expected results. 9 10 * fast/viewport/viewport-legacy-handheldfriendly-expected.txt: Added. 11 * fast/viewport/viewport-legacy-handheldfriendly.html: Added. 12 * fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt: Added. 13 * fast/viewport/viewport-legacy-mobileoptimized-2.html: Added. 14 * fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt: Added. 15 * fast/viewport/viewport-legacy-mobileoptimized-3.html: Added. 16 * fast/viewport/viewport-legacy-mobileoptimized-expected.txt: Added. 17 * fast/viewport/viewport-legacy-mobileoptimized.html: Added. 18 * fast/viewport/viewport-legacy-ordering-1-expected.txt: Added. 19 * fast/viewport/viewport-legacy-ordering-1.html: Added. 20 * fast/viewport/viewport-legacy-ordering-2-expected.txt: Added. 21 * fast/viewport/viewport-legacy-ordering-2.html: Added. 22 * fast/viewport/viewport-legacy-ordering-3-expected.txt: Added. 23 * fast/viewport/viewport-legacy-ordering-3.html: Added. 24 * fast/viewport/viewport-legacy-ordering-4-expected.txt: Added. 25 * fast/viewport/viewport-legacy-ordering-4.html: Added. 26 * fast/viewport/viewport-legacy-ordering-5-expected.txt: Added. 27 * fast/viewport/viewport-legacy-ordering-5.html: Added. 28 * fast/viewport/viewport-legacy-ordering-6-expected.txt: Added. 29 * fast/viewport/viewport-legacy-ordering-6.html: Added. 30 * fast/viewport/viewport-legacy-ordering-7-expected.txt: Added. 31 * fast/viewport/viewport-legacy-ordering-7.html: Added. 32 * fast/viewport/viewport-legacy-ordering-8-expected.txt: Added. 33 * fast/viewport/viewport-legacy-ordering-8.html: Added. 34 * fast/viewport/viewport-legacy-ordering-9-expected.txt: Added. 35 * fast/viewport/viewport-legacy-ordering-9.html: Added. 36 1 37 2012-06-01 Tony Chang <tony@chromium.org> 2 38 -
trunk/Source/WebCore/ChangeLog
r119255 r119256 1 2012-06-01 Hugo Parente Lima <hugo.lima@openbossa.org> 2 3 Improve handling of legacy viewport meta tags 4 https://bugs.webkit.org/show_bug.cgi?id=55874 5 6 Reviewed by Adam Barth. 7 8 We now support MobileOptimized and HandheldFriendly as well. 9 10 We set width equal to device-width for HandheldFriendly and 11 for MobileOptimized, the content value of MobileOptimized is 12 ignored and the initial-scale set to 1 to fit Android behavior. 13 14 The prioritizing is done the same way as on Windows Phone 7: 15 16 XHTML Mobile Profile found 17 HandheldFriendly 18 MobileOptimized (overrides HandheldFriendly) 19 Viewport (overrides all above) 20 21 Original patch by Kenneth Rohde Christiansen. 22 23 Tests: fast/viewport/viewport-legacy-handheldfriendly.html 24 fast/viewport/viewport-legacy-mobileoptimized-2.html 25 fast/viewport/viewport-legacy-mobileoptimized-3.html 26 fast/viewport/viewport-legacy-mobileoptimized.html 27 fast/viewport/viewport-legacy-ordering-1.html 28 fast/viewport/viewport-legacy-ordering-2.html 29 fast/viewport/viewport-legacy-ordering-3.html 30 fast/viewport/viewport-legacy-ordering-4.html 31 fast/viewport/viewport-legacy-ordering-5.html 32 fast/viewport/viewport-legacy-ordering-6.html 33 fast/viewport/viewport-legacy-ordering-7.html 34 fast/viewport/viewport-legacy-ordering-8.html 35 fast/viewport/viewport-legacy-ordering-9.html 36 37 * dom/Document.cpp: 38 (WebCore::Document::setDocType): 39 (WebCore::Document::processViewport): Add an origin parameter to 40 tell what is changing the viewport. 41 * dom/Document.h: 42 (Document): 43 * dom/ViewportArguments.h: 44 * html/HTMLMetaElement.cpp: 45 (WebCore::HTMLMetaElement::process): 46 1 47 2012-06-01 Tony Chang <tony@chromium.org> 2 48 -
trunk/Source/WebCore/dom/Document.cpp
r119204 r119256 783 783 ASSERT(m_viewportArguments.type == ViewportArguments::Implicit); 784 784 if (m_docType->publicId().startsWith("-//wapforum//dtd xhtml mobile 1.", /* caseSensitive */ false)) 785 processViewport("width=device-width, height=device-height , initial-scale=1");785 processViewport("width=device-width, height=device-height", ViewportArguments::XHTMLMobileProfile); 786 786 #endif 787 787 } … … 3037 3037 } 3038 3038 3039 void Document::processViewport(const String& features )3039 void Document::processViewport(const String& features, ViewportArguments::Type origin) 3040 3040 { 3041 3041 ASSERT(!features.isNull()); 3042 3042 3043 m_viewportArguments = ViewportArguments(ViewportArguments::ViewportMeta); 3043 if (origin < m_viewportArguments.type) 3044 return; 3045 3046 m_viewportArguments = ViewportArguments(origin); 3044 3047 processArguments(features, (void*)&m_viewportArguments, &setViewportFeature); 3045 3048 -
trunk/Source/WebCore/dom/Document.h
r119204 r119256 835 835 */ 836 836 void processHttpEquiv(const String& equiv, const String& content); 837 void processViewport(const String& features );837 void processViewport(const String& features, ViewportArguments::Type origin); 838 838 void updateViewportArguments(); 839 839 void processReferrerPolicy(const String& policy); -
trunk/Source/WebCore/dom/ViewportArguments.h
r116632 r119256 58 58 59 59 enum Type { 60 // These are ordered in increasing importance. 60 61 Implicit, 62 #if USE(LEGACY_VIEWPORT_ADAPTION) 63 XHTMLMobileProfile, 64 HandheldFriendlyMeta, 65 MobileOptimizedMeta, 66 #endif 61 67 ViewportMeta 62 68 } type; -
trunk/Source/WebCore/html/HTMLMetaElement.cpp
r118192 r119256 73 73 74 74 if (equalIgnoringCase(name(), "viewport")) 75 document()->processViewport(contentValue); 76 77 if (equalIgnoringCase(name(), "referrer")) 75 document()->processViewport(contentValue, ViewportArguments::ViewportMeta); 76 else if (equalIgnoringCase(name(), "referrer")) 78 77 document()->processReferrerPolicy(contentValue); 78 #if USE(LEGACY_VIEWPORT_ADAPTION) 79 else if (equalIgnoringCase(name(), "handheldfriendly") && equalIgnoringCase(contentValue, "true")) 80 document()->processViewport("width=device-width", ViewportArguments::HandheldFriendlyMeta); 81 else if (equalIgnoringCase(name(), "mobileoptimized")) 82 document()->processViewport("width=device-width, initial-scale=1", ViewportArguments::MobileOptimizedMeta); 83 #endif 79 84 80 85 // Get the document to process the tag, but only if we're actually part of DOM tree (changing a meta tag while
Note: See TracChangeset
for help on using the changeset viewer.