Title: [242069] trunk
Revision
242069
Author
[email protected]
Date
2019-02-25 20:37:59 -0800 (Mon, 25 Feb 2019)

Log Message

scalableNativeWebpageParameters() is not preserved on new page navigation.
https://bugs.webkit.org/show_bug.cgi?id=194892
<rdar://problem/47538280>

Source/WebCore:

If a page's current default viewport configuration is scalableNativeWebpageParameters due to
the fact that m_canIgnoreScalingConstraints is true, loading a new page should preserve this
configuration until we derive the right values from viewport meta-tag.

Patch by Yongjun Zhang <[email protected]> on 2019-02-25
Reviewed by Wenson Hsieh.

Test: fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html

* page/ViewportConfiguration.cpp:
(WebCore::ViewportConfiguration::canOverrideConfigurationParameters const): Use fixedNativeWebpageParameters().
(WebCore::ViewportConfiguration::updateDefaultConfiguration): Use nativeWebpageParameters.
(WebCore::ViewportConfiguration::nativeWebpageParameters): Return the appropriate default configuration
    based on m_canIgnoreScalingConstraints and shouldIgnoreMinimumEffectiveDeviceWidth().
(WebCore::ViewportConfiguration::fixedNativeWebpageParameters): Renamed from nativeWebpageParameters()
(WebCore::ViewportConfiguration::scalableNativeWebpageParameters): Use fixedNativeWebpageParameters.
* page/ViewportConfiguration.h: Make nativeWebpageParameters() an instance method and change the old
    static method to fixedNativeWebpageParameters which better reflects the actual behavior.

Source/WebKit:

If a page's current default viewport configuration is scalableNativeWebpageParameters due to
the fact that m_canIgnoreScalingConstraints is true, loading a new page should preserve this
configuration until we derive the right values from viewport meta-tag.

Patch by Yongjun Zhang <[email protected]> on 2019-02-25
Reviewed by Wenson Hsieh.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::resetViewportDefaultConfiguration): Use nativeWebpageParameters() instance method to
    get the appropriate default configuration.

Tools:

Patch by Yongjun Zhang <[email protected]> on 2019-02-25
Reviewed by Wenson Hsieh.

Allow UIScriptController to set WKWebView's _allowsViewportShrinkToFit property with a new `setAllowsViewportShrinkToFit` method.

* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::allowsViewportShrinkToFit):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):

LayoutTests:

Patch by Yongjun Zhang <[email protected]> on 2019-02-25
Reviewed by Wenson Hsieh.

* fast/viewport/ios/resources/go-back.html: Added.
* fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation-expected.txt: Added.
* fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html: Added.
* fast/viewport/ios/minimum-scale-after-changing-view-scale.html: When shouldIgnoreMetaViewport
    setting is on, for pages don't have viewport meta-tag, the default configuration is now
    changed to scalableNativeWebpageParameters(). The original test was under the assumption
    that the default configuration is always fixedNativeWebpageParameters(). To keep the test
    still valid, add a viewport meta-tag to it.
* resources/ui-helper.js:
(window.UIHelper.setAllowsViewportShrinkToFit):

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (242068 => 242069)


--- trunk/LayoutTests/ChangeLog	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/LayoutTests/ChangeLog	2019-02-26 04:37:59 UTC (rev 242069)
@@ -1,3 +1,22 @@
+2019-02-25  Yongjun Zhang  <[email protected]>
+
+        scalableNativeWebpageParameters() is not preserved on new page navigation.
+        https://bugs.webkit.org/show_bug.cgi?id=194892
+        <rdar://problem/47538280>
+
+        Reviewed by Wenson Hsieh.
+
+        * fast/viewport/ios/resources/go-back.html: Added.
+        * fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation-expected.txt: Added.
+        * fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html: Added.
+        * fast/viewport/ios/minimum-scale-after-changing-view-scale.html: When shouldIgnoreMetaViewport
+            setting is on, for pages don't have viewport meta-tag, the default configuration is now
+            changed to scalableNativeWebpageParameters(). The original test was under the assumption
+            that the default configuration is always fixedNativeWebpageParameters(). To keep the test
+            still valid, add a viewport meta-tag to it.
+        * resources/ui-helper.js:
+        (window.UIHelper.setAllowsViewportShrinkToFit):
+
 2019-02-25  Wenson Hsieh  <[email protected]>
 
         [iOS] Adjust initial scale zooming heuristics when changing view scale

Modified: trunk/LayoutTests/fast/viewport/ios/minimum-scale-after-changing-view-scale.html (242068 => 242069)


--- trunk/LayoutTests/fast/viewport/ios/minimum-scale-after-changing-view-scale.html	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/LayoutTests/fast/viewport/ios/minimum-scale-after-changing-view-scale.html	2019-02-26 04:37:59 UTC (rev 242069)
@@ -1,6 +1,7 @@
 <!DOCTYPE html> <!-- webkit-test-runner [ shouldIgnoreMetaViewport=true ] -->
 <html>
 <head>
+    <meta name="viewport" content="width=device-width, initial-scale=1">
     <style>
     body {
         margin: 0;

Added: trunk/LayoutTests/fast/viewport/ios/resources/go-back.html (0 => 242069)


--- trunk/LayoutTests/fast/viewport/ios/resources/go-back.html	                        (rev 0)
+++ trunk/LayoutTests/fast/viewport/ios/resources/go-back.html	2019-02-26 04:37:59 UTC (rev 242069)
@@ -0,0 +1,10 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ shouldIgnoreMetaViewport=true ] -->
+
+This page should go back.
+<script>
+  window.addEventListener("load", function() {
+    setTimeout(function() {
+      history.back();
+    }, 0);
+  }, false);
+</script>

Added: trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation-expected.txt (0 => 242069)


--- trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation-expected.txt	2019-02-26 04:37:59 UTC (rev 242069)
@@ -0,0 +1,6 @@
+ALERT: pageshow - not from cache
+ALERT: pageshow - from cache
+window size: [1008, 1726]
+zoom scale: 0.32
+
+

Added: trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html (0 => 242069)


--- trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html	                        (rev 0)
+++ trunk/LayoutTests/fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html	2019-02-26 04:37:59 UTC (rev 242069)
@@ -0,0 +1,64 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ shouldIgnoreMetaViewport=true ] -->
+
+<html>
+<head>
+     <script src=""
+     <script>
+     if (window.testRunner) {
+         testRunner.dumpAsText();
+         testRunner.waitUntilDone();
+     }
+
+     async function finishTest() {
+         const appendOutput = message => {
+             output.appendChild(document.createTextNode(message));
+             output.appendChild(document.createElement("br"));
+         };
+
+         appendOutput(`window size: [${innerWidth}, ${innerHeight}]`);
+         appendOutput(`zoom scale: ${(await UIHelper.zoomScale()).toFixed(2)}`);
+         appendOutput("");
+  
+         await UIHelper.setAllowsViewportShrinkToFit(false);
+         await Promise.all([UIHelper.ensureVisibleContentRectUpdate(), UIHelper.ensurePresentationUpdate()]);
+
+         testRunner.notifyDone();
+     }
+     
+     async function setUp() {
+         await UIHelper.setAllowsViewportShrinkToFit(true);
+         await Promise.all([UIHelper.ensureVisibleContentRectUpdate(), UIHelper.ensurePresentationUpdate()]);
+     }
+
+    window.addEventListener("pageshow", function(event) {
+        alert("pageshow - " + (event.persisted ? "" : "not ") + "from cache");
+        if (event.persisted)
+            setTimeout(finishTest, 0);
+        else
+            setUp();
+            
+    }, false);
+
+    // Force a back navigation back to this page.
+    window.addEventListener("load", function(event) {
+        setTimeout(function() {
+            window.testRunner.overridePreference("WebKitUsesPageCachePreferenceKey", 1);
+            window.location.href = ""
+        }, 0);
+    }, false);    
+    </script>
+    
+    <style>
+        .wide {
+            height: 1px;
+            width: 1000px;
+            background-color: gray;
+        }
+    </style>
+</head>
+
+<body>
+<div class="wide"></div>
+<pre id="output"></pre>
+</body>
+</html>

Modified: trunk/LayoutTests/resources/ui-helper.js (242068 => 242069)


--- trunk/LayoutTests/resources/ui-helper.js	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/LayoutTests/resources/ui-helper.js	2019-02-26 04:37:59 UTC (rev 242069)
@@ -636,6 +636,14 @@
         return new Promise(resolve => testRunner.runUIScript(`uiController.setMinimumEffectiveWidth(${effectiveWidth})`, resolve));
     }
 
+    static setAllowsViewportShrinkToFit(allows)
+    {
+        if (!this.isWebKit2())
+            return Promise.resolve();
+
+        return new Promise(resolve => testRunner.runUIScript(`uiController.setAllowsViewportShrinkToFit(${allows})`, resolve));
+    }
+
     static setKeyboardInputModeIdentifier(identifier)
     {
         if (!this.isWebKit2())

Modified: trunk/Source/WebCore/ChangeLog (242068 => 242069)


--- trunk/Source/WebCore/ChangeLog	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Source/WebCore/ChangeLog	2019-02-26 04:37:59 UTC (rev 242069)
@@ -1,3 +1,27 @@
+2019-02-25  Yongjun Zhang  <[email protected]>
+
+        scalableNativeWebpageParameters() is not preserved on new page navigation.
+        https://bugs.webkit.org/show_bug.cgi?id=194892
+        <rdar://problem/47538280>
+
+        If a page's current default viewport configuration is scalableNativeWebpageParameters due to
+        the fact that m_canIgnoreScalingConstraints is true, loading a new page should preserve this
+        configuration until we derive the right values from viewport meta-tag.
+
+        Reviewed by Wenson Hsieh.
+
+        Test: fast/viewport/ios/viewport-shrink-to-fit-on-new-navigation.html
+
+        * page/ViewportConfiguration.cpp:
+        (WebCore::ViewportConfiguration::canOverrideConfigurationParameters const): Use fixedNativeWebpageParameters().
+        (WebCore::ViewportConfiguration::updateDefaultConfiguration): Use nativeWebpageParameters.
+        (WebCore::ViewportConfiguration::nativeWebpageParameters): Return the appropriate default configuration
+            based on m_canIgnoreScalingConstraints and shouldIgnoreMinimumEffectiveDeviceWidth().
+        (WebCore::ViewportConfiguration::fixedNativeWebpageParameters): Renamed from nativeWebpageParameters()
+        (WebCore::ViewportConfiguration::scalableNativeWebpageParameters): Use fixedNativeWebpageParameters.
+        * page/ViewportConfiguration.h: Make nativeWebpageParameters() an instance method and change the old
+            static method to fixedNativeWebpageParameters which better reflects the actual behavior.
+
 2019-02-25  Zalan Bujtas  <[email protected]>
 
         [ContentChangeObserver] Move observing logic from DOMWindow::clearTimeout to ContentChangeObserver

Modified: trunk/Source/WebCore/page/ViewportConfiguration.cpp (242068 => 242069)


--- trunk/Source/WebCore/page/ViewportConfiguration.cpp	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Source/WebCore/page/ViewportConfiguration.cpp	2019-02-26 04:37:59 UTC (rev 242069)
@@ -145,7 +145,7 @@
 
 bool ViewportConfiguration::canOverrideConfigurationParameters() const
 {
-    return m_defaultConfiguration == ViewportConfiguration::nativeWebpageParameters() || m_defaultConfiguration == ViewportConfiguration::scalableNativeWebpageParameters();
+    return m_defaultConfiguration == ViewportConfiguration::nativeWebpageParametersWithoutShrinkToFit() || m_defaultConfiguration == ViewportConfiguration::nativeWebpageParametersWithShrinkToFit();
 }
 
 void ViewportConfiguration::updateDefaultConfiguration()
@@ -153,15 +153,7 @@
     if (!canOverrideConfigurationParameters())
         return;
 
-    if (m_canIgnoreScalingConstraints) {
-        m_defaultConfiguration = ViewportConfiguration::scalableNativeWebpageParameters();
-        return;
-    }
-
-    if (shouldIgnoreMinimumEffectiveDeviceWidth())
-        m_defaultConfiguration = ViewportConfiguration::nativeWebpageParameters();
-    else
-        m_defaultConfiguration = ViewportConfiguration::scalableNativeWebpageParameters();
+    m_defaultConfiguration = nativeWebpageParameters();
 }
 
 bool ViewportConfiguration::setViewportArguments(const ViewportArguments& viewportArguments)
@@ -335,6 +327,14 @@
 
 ViewportConfiguration::Parameters ViewportConfiguration::nativeWebpageParameters()
 {
+    if (m_canIgnoreScalingConstraints || !shouldIgnoreMinimumEffectiveDeviceWidth())
+        return ViewportConfiguration::nativeWebpageParametersWithShrinkToFit();
+
+    return ViewportConfiguration::nativeWebpageParametersWithoutShrinkToFit();
+}
+
+ViewportConfiguration::Parameters ViewportConfiguration::nativeWebpageParametersWithoutShrinkToFit()
+{
     Parameters parameters;
     parameters.width = ViewportArguments::ValueDeviceWidth;
     parameters.widthIsSet = true;
@@ -348,9 +348,9 @@
     return parameters;
 }
 
-ViewportConfiguration::Parameters ViewportConfiguration::scalableNativeWebpageParameters()
+ViewportConfiguration::Parameters ViewportConfiguration::nativeWebpageParametersWithShrinkToFit()
 {
-    Parameters parameters = ViewportConfiguration::nativeWebpageParameters();
+    Parameters parameters = ViewportConfiguration::nativeWebpageParametersWithoutShrinkToFit();
     parameters.allowsShrinkToFit = true;
     parameters.minimumScale = 0.25;
     return parameters;

Modified: trunk/Source/WebCore/page/ViewportConfiguration.h (242068 => 242069)


--- trunk/Source/WebCore/page/ViewportConfiguration.h	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Source/WebCore/page/ViewportConfiguration.h	2019-02-26 04:37:59 UTC (rev 242069)
@@ -102,8 +102,9 @@
     bool avoidsUnsafeArea() const { return m_configuration.avoidsUnsafeArea; }
 
     // Matches a width=device-width, initial-scale=1 viewport.
-    WEBCORE_EXPORT static Parameters nativeWebpageParameters();
-    static Parameters scalableNativeWebpageParameters();
+    WEBCORE_EXPORT Parameters nativeWebpageParameters();
+    static Parameters nativeWebpageParametersWithoutShrinkToFit();
+    static Parameters nativeWebpageParametersWithShrinkToFit();
     WEBCORE_EXPORT static Parameters webpageParameters();
     WEBCORE_EXPORT static Parameters textDocumentParameters();
     WEBCORE_EXPORT static Parameters imageDocumentParameters();

Modified: trunk/Source/WebKit/ChangeLog (242068 => 242069)


--- trunk/Source/WebKit/ChangeLog	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Source/WebKit/ChangeLog	2019-02-26 04:37:59 UTC (rev 242069)
@@ -1,3 +1,19 @@
+2019-02-25  Yongjun Zhang  <[email protected]>
+
+        scalableNativeWebpageParameters() is not preserved on new page navigation.
+        https://bugs.webkit.org/show_bug.cgi?id=194892
+        <rdar://problem/47538280>
+
+        If a page's current default viewport configuration is scalableNativeWebpageParameters due to
+        the fact that m_canIgnoreScalingConstraints is true, loading a new page should preserve this
+        configuration until we derive the right values from viewport meta-tag.
+
+        Reviewed by Wenson Hsieh.
+
+        * WebProcess/WebPage/ios/WebPageIOS.mm:
+        (WebKit::WebPage::resetViewportDefaultConfiguration): Use nativeWebpageParameters() instance method to
+            get the appropriate default configuration.
+
 2019-02-25  Wenson Hsieh  <[email protected]>
 
         [iOS] Adjust initial scale zooming heuristics when changing view scale

Modified: trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm (242068 => 242069)


--- trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm	2019-02-26 04:37:59 UTC (rev 242069)
@@ -2906,7 +2906,7 @@
 
     auto parametersForStandardFrame = [&] {
         if (m_page->settings().shouldIgnoreMetaViewport())
-            return ViewportConfiguration::nativeWebpageParameters();
+            return m_viewportConfiguration.nativeWebpageParameters();
 
         return ViewportConfiguration::webpageParameters();
     };

Modified: trunk/Tools/ChangeLog (242068 => 242069)


--- trunk/Tools/ChangeLog	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/ChangeLog	2019-02-26 04:37:59 UTC (rev 242069)
@@ -1,3 +1,24 @@
+2019-02-25  Yongjun Zhang  <[email protected]>
+
+        scalableNativeWebpageParameters() is not preserved on new page navigation.
+        https://bugs.webkit.org/show_bug.cgi?id=194892
+        <rdar://problem/47538280>
+
+        Reviewed by Wenson Hsieh.
+        
+        Allow UIScriptController to set WKWebView's _allowsViewportShrinkToFit property with a new `setAllowsViewportShrinkToFit` method.
+
+        * DumpRenderTree/ios/UIScriptControllerIOS.mm:
+        (WTR::UIScriptController::setAllowsViewportShrinkToFit):
+        * DumpRenderTree/mac/UIScriptControllerMac.mm:
+        (WTR::UIScriptController::allowsViewportShrinkToFit):
+        * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
+        * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
+        (WTR::UIScriptController::setAllowsViewportShrinkToFit):
+        * TestRunnerShared/UIScriptContext/UIScriptController.h:
+        * WebKitTestRunner/UIScriptControllerCocoa.mm:
+        (WTR::UIScriptController::setAllowsViewportShrinkToFit):
+
 2019-02-25  Aakash Jain  <[email protected]>
 
         [ews-app] Add model for handling multiple Buildbot instances

Modified: trunk/Tools/DumpRenderTree/ios/UIScriptControllerIOS.mm (242068 => 242069)


--- trunk/Tools/DumpRenderTree/ios/UIScriptControllerIOS.mm	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/DumpRenderTree/ios/UIScriptControllerIOS.mm	2019-02-26 04:37:59 UTC (rev 242069)
@@ -94,6 +94,10 @@
 {
 }
 
+void UIScriptController::setAllowsViewportShrinkToFit(bool)
+{
+}
+
 void UIScriptController::simulateAccessibilitySettingsChangeNotification(JSValueRef)
 {
 }

Modified: trunk/Tools/DumpRenderTree/mac/UIScriptControllerMac.mm (242068 => 242069)


--- trunk/Tools/DumpRenderTree/mac/UIScriptControllerMac.mm	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/DumpRenderTree/mac/UIScriptControllerMac.mm	2019-02-26 04:37:59 UTC (rev 242069)
@@ -101,6 +101,10 @@
 {
 }
 
+void UIScriptController::setAllowsViewportShrinkToFit(bool)
+{
+}
+
 void UIScriptController::simulateAccessibilitySettingsChangeNotification(JSValueRef)
 {
 }

Modified: trunk/Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl (242068 => 242069)


--- trunk/Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl	2019-02-26 04:37:59 UTC (rev 242069)
@@ -236,6 +236,7 @@
 
     void setViewScale(double scale);
     void setMinimumEffectiveWidth(double effectiveWidth);
+    void setAllowsViewportShrinkToFit(boolean allows);
 
     void resignFirstResponder();
     readonly attribute boolean isPresentingModally;

Modified: trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.cpp (242068 => 242069)


--- trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.cpp	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.cpp	2019-02-26 04:37:59 UTC (rev 242069)
@@ -241,6 +241,10 @@
 {
 }
 
+void UIScriptController::setAllowsViewportShrinkToFit(bool)
+{
+}
+
 void UIScriptController::resignFirstResponder()
 {
 }

Modified: trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.h (242068 => 242069)


--- trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.h	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/TestRunnerShared/UIScriptContext/UIScriptController.h	2019-02-26 04:37:59 UTC (rev 242069)
@@ -72,6 +72,7 @@
     void zoomToScale(double scale, JSValueRef callback);
     void setViewScale(double);
     void setMinimumEffectiveWidth(double);
+    void setAllowsViewportShrinkToFit(bool);
 
     void resignFirstResponder();
 

Modified: trunk/Tools/WebKitTestRunner/UIScriptControllerCocoa.mm (242068 => 242069)


--- trunk/Tools/WebKitTestRunner/UIScriptControllerCocoa.mm	2019-02-26 03:16:44 UTC (rev 242068)
+++ trunk/Tools/WebKitTestRunner/UIScriptControllerCocoa.mm	2019-02-26 04:37:59 UTC (rev 242069)
@@ -54,6 +54,15 @@
 #endif
 }
 
+void UIScriptController::setAllowsViewportShrinkToFit(bool allows)
+{
+#if WK_API_ENABLED && PLATFORM(IOS_FAMILY)
+    TestController::singleton().mainWebView()->platformView()._allowsViewportShrinkToFit = allows;
+#else
+    UNUSED_PARAM(allows);
+#endif
+}
+
 void UIScriptController::resignFirstResponder()
 {
 #if WK_API_ENABLED
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to