Diff
Modified: trunk/LayoutTests/ChangeLog (216633 => 216634)
--- trunk/LayoutTests/ChangeLog 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/ChangeLog 2017-05-10 23:05:09 UTC (rev 216634)
@@ -1,3 +1,17 @@
+2017-05-10 Tim Horton <timothy_hor...@apple.com>
+
+ Add an experimental feature flag for viewport-fit
+ https://bugs.webkit.org/show_bug.cgi?id=171948
+ <rdar://problem/31995518>
+
+ Reviewed by Simon Fraser.
+
+ * fast/css/variables/constants/ios/safe-area-inset-set-expected.html:
+ * fast/css/variables/constants/ios/safe-area-inset-set.html:
+ * fast/viewport/ios/viewport-fit-auto.html:
+ * fast/viewport/ios/viewport-fit-contain.html:
+ * fast/viewport/ios/viewport-fit-cover.html:
+
2017-05-10 Matt Lewis <jlew...@apple.com>
Marked fast/hidpi/filters-and-image-buffer-resolution.html as flaky.
Modified: trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set-expected.html (216633 => 216634)
--- trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set-expected.html 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set-expected.html 2017-05-10 23:05:09 UTC (rev 216634)
@@ -1,5 +1,9 @@
<!DOCTYPE html> <!-- webkit-test-runner [ useFlexibleViewport=true ] -->
<head>
+ <script>
+ if (window.internals)
+ internals.settings.setViewportFitEnabled(true);
+ </script>
<meta name="viewport" content="initial-scale=1, viewport-fit=cover">
<style>
#a {
Modified: trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set.html (216633 => 216634)
--- trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set.html 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/fast/css/variables/constants/ios/safe-area-inset-set.html 2017-05-10 23:05:09 UTC (rev 216634)
@@ -1,7 +1,9 @@
<!DOCTYPE html> <!-- webkit-test-runner [ useFlexibleViewport=true ] -->
<script>
-if (window.internals)
+if (window.internals) {
internals.settings.setConstantPropertiesEnabled(true);
+ internals.settings.setViewportFitEnabled(true);
+}
</script>
<head>
<meta name="viewport" content="initial-scale=1, viewport-fit=cover">
Modified: trunk/LayoutTests/fast/viewport/ios/viewport-fit-auto.html (216633 => 216634)
--- trunk/LayoutTests/fast/viewport/ios/viewport-fit-auto.html 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/fast/viewport/ios/viewport-fit-auto.html 2017-05-10 23:05:09 UTC (rev 216634)
@@ -2,6 +2,10 @@
<html>
<head>
+ <script>
+ if (window.internals)
+ internals.settings.setViewportFitEnabled(true);
+ </script>
<meta name="viewport" content="initial-scale=1, viewport-fit=auto">
<script src=""
<script>
Modified: trunk/LayoutTests/fast/viewport/ios/viewport-fit-contain.html (216633 => 216634)
--- trunk/LayoutTests/fast/viewport/ios/viewport-fit-contain.html 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/fast/viewport/ios/viewport-fit-contain.html 2017-05-10 23:05:09 UTC (rev 216634)
@@ -2,6 +2,10 @@
<html>
<head>
+ <script>
+ if (window.internals)
+ internals.settings.setViewportFitEnabled(true);
+ </script>
<meta name="viewport" content="initial-scale=1, viewport-fit=contain">
<script src=""
<script>
Modified: trunk/LayoutTests/fast/viewport/ios/viewport-fit-cover.html (216633 => 216634)
--- trunk/LayoutTests/fast/viewport/ios/viewport-fit-cover.html 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/LayoutTests/fast/viewport/ios/viewport-fit-cover.html 2017-05-10 23:05:09 UTC (rev 216634)
@@ -2,6 +2,10 @@
<html>
<head>
+ <script>
+ if (window.internals)
+ internals.settings.setViewportFitEnabled(true);
+ </script>
<meta name="viewport" content="initial-scale=1, viewport-fit=cover">
<script src=""
<script>
Modified: trunk/Source/WebCore/ChangeLog (216633 => 216634)
--- trunk/Source/WebCore/ChangeLog 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebCore/ChangeLog 2017-05-10 23:05:09 UTC (rev 216634)
@@ -1,3 +1,16 @@
+2017-05-10 Tim Horton <timothy_hor...@apple.com>
+
+ Add an experimental feature flag for viewport-fit
+ https://bugs.webkit.org/show_bug.cgi?id=171948
+ <rdar://problem/31995518>
+
+ Reviewed by Simon Fraser.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::setViewportFeature):
+ * page/Settings.in:
+ Disable parsing of viewport-fit if the experimental feature is disabled.
+
2017-05-10 Chris Dumez <cdu...@apple.com>
Simplify relationship between Attr and Element now that Attr is childless
Modified: trunk/Source/WebCore/dom/ViewportArguments.cpp (216633 => 216634)
--- trunk/Source/WebCore/dom/ViewportArguments.cpp 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebCore/dom/ViewportArguments.cpp 2017-05-10 23:05:09 UTC (rev 216634)
@@ -32,6 +32,7 @@
#include "Frame.h"
#include "IntSize.h"
#include "ScriptableDocumentParser.h"
+#include "Settings.h"
#include "TextStream.h"
namespace WebCore {
@@ -417,7 +418,7 @@
#endif
else if (equalLettersIgnoringASCIICase(key, "shrink-to-fit"))
arguments.shrinkToFit = findBooleanValue(document, key, value);
- else if (equalLettersIgnoringASCIICase(key, "viewport-fit"))
+ else if (equalLettersIgnoringASCIICase(key, "viewport-fit") && document.settings().viewportFitEnabled())
arguments.viewportFit = parseViewportFitValue(document, key, value);
else
reportViewportWarning(document, UnrecognizedViewportArgumentKeyError, key);
Modified: trunk/Source/WebCore/page/Settings.in (216633 => 216634)
--- trunk/Source/WebCore/page/Settings.in 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebCore/page/Settings.in 2017-05-10 23:05:09 UTC (rev 216634)
@@ -294,3 +294,5 @@
subresourceIntegrityEnabled initial=true
constantPropertiesEnabled initial=false
+
+viewportFitEnabled initial=false
Modified: trunk/Source/WebKit2/ChangeLog (216633 => 216634)
--- trunk/Source/WebKit2/ChangeLog 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebKit2/ChangeLog 2017-05-10 23:05:09 UTC (rev 216634)
@@ -1,3 +1,16 @@
+2017-05-10 Tim Horton <timothy_hor...@apple.com>
+
+ Add an experimental feature flag for viewport-fit
+ https://bugs.webkit.org/show_bug.cgi?id=171948
+ <rdar://problem/31995518>
+
+ Reviewed by Simon Fraser.
+
+ * Shared/WebPreferencesDefinitions.h:
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::updatePreferences):
+ Add an experimental feature flag.
+
2017-05-10 Alex Christensen <achristen...@webkit.org>
Include headers in WebKit.h
Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (216633 => 216634)
--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h 2017-05-10 23:05:09 UTC (rev 216634)
@@ -351,6 +351,7 @@
macro(ResourceTimingEnabled, resourceTimingEnabled, Bool, bool, DEFAULT_RESOURCE_TIMING_ENABLED, "Resource Timing", "Enable ResourceTiming API") \
macro(SubtleCryptoEnabled, subtleCryptoEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "SubtleCrypto", "Enable SubtleCrypto support") \
macro(UserTimingEnabled, userTimingEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "User Timing", "Enable UserTiming API") \
+ macro(ViewportFitEnabled, viewportFitEnabled, Bool, bool, DEFAULT_EXPERIMENTAL_FEATURES_ENABLED, "Viewport Fit", "Enable viewport-fit viewport parameter") \
macro(WebAnimationsEnabled, webAnimationsEnabled, Bool, bool, false, "Web Animations", "Web Animations prototype") \
macro(WebGL2Enabled, webGL2Enabled, Bool, bool, false, "WebGL 2.0", "WebGL 2 prototype") \
macro(WebGPUEnabled, webGPUEnabled, Bool, bool, false, "WebGPU", "WebGPU prototype") \
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (216633 => 216634)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-05-10 22:57:28 UTC (rev 216633)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-05-10 23:05:09 UTC (rev 216634)
@@ -3342,6 +3342,8 @@
settings.setConstantPropertiesEnabled(store.getBoolValueForKey(WebPreferencesKey::constantPropertiesEnabledKey()));
+ settings.setViewportFitEnabled(store.getBoolValueForKey(WebPreferencesKey::viewportFitEnabledKey()));
+
settings.setVisualViewportEnabled(store.getBoolValueForKey(WebPreferencesKey::visualViewportEnabledKey()));
settings.setInputEventsEnabled(store.getBoolValueForKey(WebPreferencesKey::inputEventsEnabledKey()));