Remove Alternative Presentation Button
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 20 Dec 2017 18:43:22 +0000 (18:43 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 20 Dec 2017 18:43:22 +0000 (18:43 +0000)
https://bugs.webkit.org/show_bug.cgi?id=180500
<rdar://problem/35891047>

Reviewed by Simon Fraser.

We no longer need the alternative presentation button.

.:

* Source/cmake/OptionsMac.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmake/tools/vsprops/FeatureDefines.props:
* Source/cmake/tools/vsprops/FeatureDefinesCairo.props:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* English.lproj/Localizable.strings:
* SourcesCocoa.txt:
* WebCore.xcodeproj/project.pbxproj:
* dom/Element.h:
* editing/Editor.cpp:
(WebCore::Editor::clear):
(WebCore::Editor::substituteWithAlternativePresentationButton): Deleted.
(WebCore::Editor::removeAlternativePresentationButton): Deleted.
(WebCore::Editor::elementsReplacedByAlternativePresentationButton): Deleted.
(WebCore::Editor::didInsertAlternativePresentationButtonElement): Deleted.
(WebCore::Editor::didRemoveAlternativePresentationButtonElement): Deleted.
* editing/Editor.h:
* editing/cocoa/AlternativePresentationButtonSubstitution.cpp: Removed.
* editing/cocoa/AlternativePresentationButtonSubstitution.h: Removed.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::parseAttribute):
(WebCore::HTMLInputElement::willAttachRenderers):
(WebCore::HTMLInputElement::alternativePresentationButtonElement const): Deleted.
(WebCore::HTMLInputElement::setTypeWithoutUpdatingAttribute): Deleted.
(WebCore::HTMLInputElement::createInputType): Deleted.
* html/HTMLInputElement.h:
* html/InputType.h:
(WebCore::InputType::alternativePresentationButtonElement const): Deleted.
* html/InputTypeNames.cpp:
(WebCore::InputTypeNames::alternativePresentationButton): Deleted.
* html/InputTypeNames.h:
* html/shadow/cocoa/AlternativePresentationButtonElement.cpp: Removed.
* html/shadow/cocoa/AlternativePresentationButtonElement.h: Removed.
* html/shadow/cocoa/AlternativePresentationButtonInputType.cpp: Removed.
* html/shadow/cocoa/AlternativePresentationButtonInputType.h: Removed.
* page/ChromeClient.h:
* platform/LocalizedStrings.cpp:
(WebCore::AXAlternativePresentationButtonLabel): Deleted.
(WebCore::alternativePresentationButtonTitle): Deleted.
(WebCore::alternativePresentationButtonSubtitle): Deleted.
* platform/LocalizedStrings.h:
* testing/Internals.cpp:
(WebCore::Internals::substituteWithAlternativePresentationButton): Deleted.
(WebCore::Internals::removeAlternativePresentationButton): Deleted.
(WebCore::Internals::elementsReplacedByAlternativePresentationButton): Deleted.
* testing/Internals.h:
* testing/Internals.idl:

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit:

* Configurations/FeatureDefines.xcconfig:
* UIProcess/API/APIUIClient.h:
(API::UIClient::didClickAlternativePresentationButton): Deleted.
* UIProcess/API/C/WKPageUIClient.h:
* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::didClickAlternativePresentationButton): Deleted.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleAutoFillButtonClick):
(WebKit::WebPageProxy::handleAlternativePresentationButtonClick): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
(API::InjectedBundle::PageUIClient::didClickAutoFillButton):
(API::InjectedBundle::PageUIClient::didClickAlternativePresentationButton): Deleted.
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h:
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
(-[WKWebProcessPlugInFrame substituteElements:withAlternativePresentationButtonWithIdentifier:]): Deleted.
(-[WKWebProcessPlugInFrame removeAlternativePresentationButton:]): Deleted.
(-[WKWebProcessPlugInFrame elementsReplacedByAlternativePresentationButtonWithIdentifier:]): Deleted.
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
(WKBundleFrameFocus):
(WKBundleSubstituteWithAlternativePresentationButton): Deleted.
(WKBundleRemoveAlternativePresentationButton): Deleted.
(WKBundleElementsReplacedByAlternativePresentationButton): Deleted.
* WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::didClickAlternativePresentationButton): Deleted.
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::handleAlternativePresentationButtonClick): Deleted.
* WebProcess/WebCoreSupport/WebChromeClient.h:

Source/WebKitLegacy/mac:

* Configurations/FeatureDefines.xcconfig:

Tools:

* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm: Removed.
* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(TEST):
(-[AlternativePresentationButtonDelegate _webView:didClickAlternativePresentationButtonWithUserInfo:]): Deleted.
(-[AlternativePresentationButtonDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.

LayoutTests:

* TestExpectations:
* accessibility/alternative-presentation-button-expected.txt: Removed.
* accessibility/alternative-presentation-button-input-type-expected.txt: Removed.
* accessibility/alternative-presentation-button-input-type.html: Removed.
* accessibility/alternative-presentation-button.html: Removed.
* fast/forms/alternative-presentation-button/replace-and-remove-expected.html: Removed.
* fast/forms/alternative-presentation-button/replace-and-remove.html: Removed.
* fast/forms/alternative-presentation-button/replaced-elements-expected.txt: Removed.
* fast/forms/alternative-presentation-button/replaced-elements.html: Removed.
* fast/forms/alternative-presentation-button/replacement-expected.txt: Removed.
* fast/forms/alternative-presentation-button/replacement.html: Removed.
* platform/gtk/TestExpectations:
* platform/ios/TestExpectations:
* platform/ios/fast/forms/alternative-presentation-button/replacement-expected.txt: Removed.
* platform/mac/TestExpectations:

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

81 files changed:
ChangeLog
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/accessibility/alternative-presentation-button-expected.txt [deleted file]
LayoutTests/accessibility/alternative-presentation-button-input-type-expected.txt [deleted file]
LayoutTests/accessibility/alternative-presentation-button-input-type.html [deleted file]
LayoutTests/accessibility/alternative-presentation-button.html [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove-expected.html [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove.html [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replaced-elements-expected.txt [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replaced-elements.html [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replacement-expected.txt [deleted file]
LayoutTests/fast/forms/alternative-presentation-button/replacement.html [deleted file]
LayoutTests/platform/gtk/TestExpectations
LayoutTests/platform/ios/TestExpectations
LayoutTests/platform/ios/fast/forms/alternative-presentation-button/replacement-expected.txt [deleted file]
LayoutTests/platform/mac/TestExpectations
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/ChangeLog
Source/WebCore/Configurations/FeatureDefines.xcconfig
Source/WebCore/DerivedSources.make
Source/WebCore/English.lproj/Localizable.strings
Source/WebCore/PAL/ChangeLog
Source/WebCore/PAL/Configurations/FeatureDefines.xcconfig
Source/WebCore/SourcesCocoa.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/WebCore.xcodeproj/project.pbxproj.orig
Source/WebCore/dom/Element.h
Source/WebCore/editing/Editor.cpp
Source/WebCore/editing/Editor.h
Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.cpp [deleted file]
Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.h [deleted file]
Source/WebCore/html/HTMLInputElement.cpp
Source/WebCore/html/HTMLInputElement.h
Source/WebCore/html/InputType.h
Source/WebCore/html/InputTypeNames.cpp
Source/WebCore/html/InputTypeNames.h
Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.cpp [deleted file]
Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.h [deleted file]
Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.cpp [deleted file]
Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.h [deleted file]
Source/WebCore/page/ChromeClient.h
Source/WebCore/platform/LocalizedStrings.cpp
Source/WebCore/platform/LocalizedStrings.h
Source/WebCore/testing/Internals.cpp
Source/WebCore/testing/Internals.h
Source/WebCore/testing/Internals.idl
Source/WebKit/ChangeLog
Source/WebKit/Configurations/FeatureDefines.xcconfig
Source/WebKit/UIProcess/API/APIUIClient.h
Source/WebKit/UIProcess/API/C/WKPageUIClient.h
Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h
Source/WebKit/UIProcess/Cocoa/UIDelegate.h
Source/WebKit/UIProcess/Cocoa/UIDelegate.mm
Source/WebKit/UIProcess/WebPageProxy.cpp
Source/WebKit/UIProcess/WebPageProxy.cpp.orig
Source/WebKit/UIProcess/WebPageProxy.h
Source/WebKit/UIProcess/WebPageProxy.messages.in
Source/WebKit/WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h
Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h
Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm
Source/WebKit/WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h
Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp
Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h
Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h
Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp
Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageUIClient.h
Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
Source/WebKitLegacy/mac/ChangeLog
Source/WebKitLegacy/mac/Configurations/FeatureDefines.xcconfig
Source/cmake/OptionsMac.cmake
Source/cmake/WebKitFeatures.cmake
Source/cmake/tools/vsprops/FeatureDefines.props
Source/cmake/tools/vsprops/FeatureDefinesCairo.props
Tools/ChangeLog
Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig
Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
Tools/TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm [deleted file]
Tools/TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm

index b0bc835..27ca290 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Source/cmake/OptionsMac.cmake:
+        * Source/cmake/WebKitFeatures.cmake:
+        * Source/cmake/tools/vsprops/FeatureDefines.props:
+        * Source/cmake/tools/vsprops/FeatureDefinesCairo.props:
+
 2017-12-20  Fujii Hironori  <Hironori.Fujii@sony.com>
 
         [CMake][WTF] Lowercase ForwardingHeaders directory name of WTF
index de4bf96..4c4f915 100644 (file)
@@ -1,3 +1,29 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * TestExpectations:
+        * accessibility/alternative-presentation-button-expected.txt: Removed.
+        * accessibility/alternative-presentation-button-input-type-expected.txt: Removed.
+        * accessibility/alternative-presentation-button-input-type.html: Removed.
+        * accessibility/alternative-presentation-button.html: Removed.
+        * fast/forms/alternative-presentation-button/replace-and-remove-expected.html: Removed.
+        * fast/forms/alternative-presentation-button/replace-and-remove.html: Removed.
+        * fast/forms/alternative-presentation-button/replaced-elements-expected.txt: Removed.
+        * fast/forms/alternative-presentation-button/replaced-elements.html: Removed.
+        * fast/forms/alternative-presentation-button/replacement-expected.txt: Removed.
+        * fast/forms/alternative-presentation-button/replacement.html: Removed.
+        * platform/gtk/TestExpectations:
+        * platform/ios/TestExpectations:
+        * platform/ios/fast/forms/alternative-presentation-button/replacement-expected.txt: Removed.
+        * platform/mac/TestExpectations:
+
 2017-12-20  Chris Dumez  <cdumez@apple.com>
 
         Do not reuse resource for memory cache if selected service worker differs
index 22c02ba..f26f323 100644 (file)
@@ -22,9 +22,6 @@ fast/visual-viewport/tiled-drawing [ Skip ]
 swipe [ Skip ]
 fast/zooming/ios [ Skip ]
 fast/forms/ios [ Skip ]
-fast/forms/alternative-presentation-button [ Skip ]
-accessibility/alternative-presentation-button-input-type.html [ Skip ]
-accessibility/alternative-presentation-button.html [ Skip ]
 fast/viewport/ios [ Skip ]
 fast/visual-viewport/ios/ [ Skip ]
 fast/events/ios [ Skip ]
diff --git a/LayoutTests/accessibility/alternative-presentation-button-expected.txt b/LayoutTests/accessibility/alternative-presentation-button-expected.txt
deleted file mode 100644 (file)
index 059cd1a..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-This tests that the alternative presentation button is an accessible element and can be hit test.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-Role: AXRole: AXButton
-Description: AXDescription: alternative presentation button
-
-Hit test alternative presentation button:
-PASS axAlternativePresentationButton.elementAtPoint(x, y).isEqual(axAlternativePresentationButton) is true
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/alternative-presentation-button-input-type-expected.txt b/LayoutTests/accessibility/alternative-presentation-button-input-type-expected.txt
deleted file mode 100644 (file)
index 4a98acd..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-
-This tests that the alternative presentation button is an accessible element and can be hit test.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-
-Before substitution:
-Role: AXRole: AXTextField
-Description: AXDescription: 
-
-After substitution:
-Role: AXRole: AXButton
-Description: AXDescription: 
-
-Hit test alternative presentation button:
-PASS axTextField.elementAtPoint(x, y).isEqual(axTextField) is true
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/alternative-presentation-button-input-type.html b/LayoutTests/accessibility/alternative-presentation-button-input-type.html
deleted file mode 100644 (file)
index 746f389..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<script src="../resources/js-test.js"></script>
-</head>
-<body>
-<input type="text" id="textfield">
-<p id="description"></p>
-<div id="console"></div>
-<script>
-description("This tests that the alternative presentation button is an accessible element and can be hit test.");
-
-if (window.accessibilityController) {
-    debug("<br>Before substitution:");
-    var axTextField = accessibilityController.accessibleElementById("textfield");
-    dumpRoleAndDescription(axTextField);
-
-    debug("<br>After substitution:");
-    window.internals.substituteWithAlternativePresentationButton([document.getElementById("textfield")], 1);
-    axTextField = accessibilityController.accessibleElementById("textfield");
-    dumpRoleAndDescription(axTextField);
-
-    debug("<br>Hit test alternative presentation button:");
-    var x = axTextField.clickPointX;
-    var y = axTextField.clickPointY;
-    shouldBeTrue("axTextField.elementAtPoint(x, y).isEqual(axTextField)");
-}
-
-function dumpRoleAndDescription(accessibleElement)
-{
-    debug("Role: " + accessibleElement.role);
-    debug("Description: " + accessibleElement.description);
-}
-</script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/alternative-presentation-button.html b/LayoutTests/accessibility/alternative-presentation-button.html
deleted file mode 100644 (file)
index 8a095bd..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<meta charset="utf-8">
-<script src="../resources/js-test.js"></script>
-</head>
-<body>
-<div id="test">
-    <h2>First name</h2>
-    <input type="text" id="first-name">
-    <h2>Last name</h2>
-    <input type="text" id="last-name">
-</div>
-<p id="description"></p>
-<div id="console"></div>
-<script>
-description("This tests that the alternative presentation button is an accessible element and can be hit test.");
-
-if (window.accessibilityController) {
-    window.internals.substituteWithAlternativePresentationButton(document.getElementById("test").children, 1);
-    var axAlternativePresentationButton = accessibilityController.focusedElement.childAtIndex(0).childAtIndex(0);
-    dumpRoleAndDescription(axAlternativePresentationButton);
-
-    debug("<br>Hit test alternative presentation button:");
-    var x = axAlternativePresentationButton.clickPointX;
-    var y = axAlternativePresentationButton.clickPointY;
-    shouldBeTrue("axAlternativePresentationButton.elementAtPoint(x, y).isEqual(axAlternativePresentationButton)");
-}
-
-function dumpRoleAndDescription(accessibleElement)
-{
-    debug("Role: " + accessibleElement.role);
-    debug("Description: " + accessibleElement.description);
-}
-</script>
-</body>
-</html>
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove-expected.html b/LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove-expected.html
deleted file mode 100644 (file)
index 3ba7f13..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-<div id="test-container">
-    <div class="test">
-        <input type="text">
-    </div>
-    <div class="test">
-        <label for="first-name">First name</label>
-        <input type="text" id="first-name">
-        <label for="last-name">Last name</label>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <p>First name</p>
-        <input type="text" id="first-name">
-        <p>Last name</p>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <label>Name <input type="text"></label>
-        <p>Some more text.</p>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name</td>
-                    <td><input type="text"></td>
-                    <td>Last name</td>
-                    <td><input type="text"></td>
-                </tr>
-        </table>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name <input type="text"></td>
-                    <td>Last name <input type="text"></td>
-                </tr>
-        </table>
-    </div>
-    <div>
-        <label>First name <input type="text"></label>
-    </div>
-    <p>Name</p>
-</div>
-</body>
-</html>
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove.html b/LayoutTests/fast/forms/alternative-presentation-button/replace-and-remove.html
deleted file mode 100644 (file)
index 6bdb2d2..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-<div id="test-container">
-    <div class="test">
-        <input type="text">
-    </div>
-    <div class="test">
-        <label for="first-name">First name</label>
-        <input type="text" id="first-name">
-        <label for="last-name">Last name</label>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <p>First name</p>
-        <input type="text" id="first-name">
-        <p>Last name</p>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <label>Name <input type="text"></label>
-        <p>Some more text.</p>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name</td>
-                    <td><input type="text"></td>
-                    <td>Last name</td>
-                    <td><input type="text"></td>
-                </tr>
-        </table>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name <input type="text"></td>
-                    <td>Last name <input type="text"></td>
-                </tr>
-        </table>
-    </div>
-    <div class="test">
-        <label>First name <input type="text"></label>
-    </div>
-</div>
-<script>
-var id = 0;
-var testContainer = document.getElementById("test-container");
-var tests = testContainer.getElementsByClassName("test");
-for (let test of tests) {
-    if (window.internals)
-        internals.substituteWithAlternativePresentationButton(test.children, ++id);
-}
-
-// Programmatically add element
-var pElement = document.createElement("p");
-pElement.textContent = "Name";
-testContainer.appendChild(pElement);
-if (window.internals)
-    internals.substituteWithAlternativePresentationButton([pElement], ++id);
-
-for (let i = id; i; ) {
-    if (window.internals)
-        internals.removeAlternativePresentationButton(i);
-    --i;
-}
-</script>
-</body>
-</html>
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replaced-elements-expected.txt b/LayoutTests/fast/forms/alternative-presentation-button/replaced-elements-expected.txt
deleted file mode 100644 (file)
index 3affa2e..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Tests that the elements returned by internals.elementsReplacedByAlternativePresentationButton() are the same as the elements passed to internals.substituteWithAlternativePresentationButton() ignoring order.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS internals.elementsReplacedByAlternativePresentationButton(1).length is 0
-PASS single input element
-PASS multiple elements
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
-
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replaced-elements.html b/LayoutTests/fast/forms/alternative-presentation-button/replaced-elements.html
deleted file mode 100644 (file)
index eae9f88..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src="../../../resources/js-test.js"></script>
-</head>
-<body>
-<div id="test-container">
-    <div class="test" data-test-name="single input element">
-        <input type="text">
-    </div>
-    <div class="test" data-test-name="multiple elements">
-        <label for="first-name">First name</label>
-        <input type="text" id="first-name">
-        <label for="last-name">Last name</label>
-        <input type="text" id="last-name">
-    </div>
-</div>
-<script>
-function areArraysEqualIgnoringOrder(a, b)
-{
-    if (a.length != b.length)
-        return false;
-    for (let aElement of a) {
-        if (!b.includes(aElement))
-            return false;
-    }
-    return true;
-}
-
-function runTests()
-{
-    if (!window.internals) {
-        testFailed("Must be run in DumpRenderTree or WebKitTestRunner.");
-        return;
-    }
-
-    // Non-existent identifier
-    shouldBeZero("internals.elementsReplacedByAlternativePresentationButton(1).length");
-
-    var id = 0;
-    var testContainer = document.getElementById("test-container");
-    var tests = testContainer.getElementsByClassName("test");
-    for (let test of tests) {
-        var id = ++id;
-        var expectedReplacedElements = Array.prototype.slice.call(test.children);
-        internals.substituteWithAlternativePresentationButton(test.children, id);
-        var actualReplacedElements = internals.elementsReplacedByAlternativePresentationButton(id);
-        if (areArraysEqualIgnoringOrder(actualReplacedElements, expectedReplacedElements))
-            testPassed(test.dataset.testName);
-        else
-            testFailed(test.dataset.testName);
-    }
-}
-
-description("Tests that the elements returned by internals.elementsReplacedByAlternativePresentationButton() are the same as the elements passed to internals.substituteWithAlternativePresentationButton() ignoring order.");
-runTests();
-</script>
-</body>
-</html>
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replacement-expected.txt b/LayoutTests/fast/forms/alternative-presentation-button/replacement-expected.txt
deleted file mode 100644 (file)
index 195c05e..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-layer at (0,0) size 800x600
-  RenderView at (0,0) size 800x600
-layer at (0,0) size 800x336
-  RenderBlock {HTML} at (0,0) size 800x336
-    RenderBody {BODY} at (8,8) size 784x312
-      RenderBlock {DIV} at (0,0) size 784x312
-        RenderBlock {DIV} at (0,0) size 784x36
-          RenderButton {INPUT} at (2,2) size 211x32 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
-            RenderBlock (anonymous) at (3,3) size 205x26
-              RenderBlock {DIV} at (0,0) size 205x26
-                RenderBlock {DIV} at (0,0) size 205x0
-                  RenderBlock {DIV} at (0,0) size 205x0
-                RenderBlock {DIV} at (0,0) size 205x26
-                  RenderBlock (anonymous) at (0,0) size 205x13
-                    RenderInline {SPAN} at (0,0) size 186x13
-                      RenderText {#text} at (0,0) size 186x13
-                        text run at (0,0) width 186: "alternative presentation button title"
-                  RenderBlock {DIV} at (0,13) size 205x13
-                    RenderText {#text} at (0,0) size 205x13
-                      text run at (0,0) width 205: "alternative presentation button subtitle"
-          RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,36) size 784x36
-          RenderBlock (anonymous) at (0,0) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-          RenderBlock (anonymous) at (0,0) size 784x36
-            RenderBlock {DIV} at (0,0) size 784x36
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x36
-                RenderBlock (anonymous) at (0,0) size 784x18
-                  RenderInline {SPAN} at (0,0) size 224x18
-                    RenderText {#text} at (0,0) size 224x18
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,18) size 784x18
-                  RenderText {#text} at (0,0) size 246x18
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-          RenderBlock (anonymous) at (0,36) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,88) size 784x36
-          RenderBlock {P} at (0,0) size 784x36
-            RenderBlock {DIV} at (0,0) size 784x36
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x36
-                RenderBlock (anonymous) at (0,0) size 784x18
-                  RenderInline {SPAN} at (0,0) size 224x18
-                    RenderText {#text} at (0,0) size 224x18
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,18) size 784x18
-                  RenderText {#text} at (0,0) size 246x18
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {DIV} at (0,140) size 784x36
-          RenderBlock (anonymous) at (0,0) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-          RenderBlock (anonymous) at (0,0) size 784x36
-            RenderBlock {DIV} at (0,0) size 784x36
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x36
-                RenderBlock (anonymous) at (0,0) size 784x18
-                  RenderInline {SPAN} at (0,0) size 224x18
-                    RenderText {#text} at (0,0) size 224x18
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,18) size 784x18
-                  RenderText {#text} at (0,0) size 246x18
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-          RenderBlock (anonymous) at (0,36) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,176) size 784x42
-          RenderTable {TABLE} at (0,0) size 252x42
-            RenderTableSection {TBODY} at (0,0) size 252x42
-              RenderTableRow {TR} at (0,2) size 252x38
-                RenderTableCell {TD} at (2,2) size 248x38 [r=0 c=0 rs=1 cs=1]
-                  RenderBlock {DIV} at (1,1) size 246x36
-                    RenderBlock {DIV} at (0,0) size 246x0
-                      RenderBlock {DIV} at (0,0) size 246x0
-                    RenderBlock {DIV} at (0,0) size 246x36
-                      RenderBlock (anonymous) at (0,0) size 246x18
-                        RenderInline {SPAN} at (0,0) size 224x18
-                          RenderText {#text} at (0,0) size 224x18
-                            text run at (0,0) width 224: "alternative presentation button title"
-                      RenderBlock {DIV} at (0,18) size 246x18
-                        RenderText {#text} at (0,0) size 246x18
-                          text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {DIV} at (0,218) size 784x42
-          RenderTable {TABLE} at (0,0) size 252x42
-            RenderTableSection {TBODY} at (0,0) size 252x42
-              RenderTableRow {TR} at (0,2) size 252x38
-                RenderTableCell {TD} at (2,2) size 248x38 [r=0 c=0 rs=1 cs=1]
-                  RenderBlock {DIV} at (1,1) size 246x36
-                    RenderBlock {DIV} at (0,0) size 246x0
-                      RenderBlock {DIV} at (0,0) size 246x0
-                    RenderBlock {DIV} at (0,0) size 246x36
-                      RenderBlock (anonymous) at (0,0) size 246x18
-                        RenderInline {SPAN} at (0,0) size 224x18
-                          RenderText {#text} at (0,0) size 224x18
-                            text run at (0,0) width 224: "alternative presentation button title"
-                      RenderBlock {DIV} at (0,18) size 246x18
-                        RenderText {#text} at (0,0) size 246x18
-                          text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {P} at (0,276) size 784x36
-          RenderBlock {DIV} at (0,0) size 784x36
-            RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x0
-            RenderBlock {DIV} at (0,0) size 784x36
-              RenderBlock (anonymous) at (0,0) size 784x18
-                RenderInline {SPAN} at (0,0) size 224x18
-                  RenderText {#text} at (0,0) size 224x18
-                    text run at (0,0) width 224: "alternative presentation button title"
-              RenderBlock {DIV} at (0,18) size 784x18
-                RenderText {#text} at (0,0) size 246x18
-                  text run at (0,0) width 246: "alternative presentation button subtitle"
diff --git a/LayoutTests/fast/forms/alternative-presentation-button/replacement.html b/LayoutTests/fast/forms/alternative-presentation-button/replacement.html
deleted file mode 100644 (file)
index ed78e5c..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body>
-<div id="test-container">
-    <div class="test">
-        <input type="text">
-    </div>
-    <div class="test">
-        <label for="first-name">First name</label>
-        <input type="text" id="first-name">
-        <label for="last-name">Last name</label>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <p>First name</p>
-        <input type="text" id="first-name">
-        <p>Last name</p>
-        <input type="text" id="last-name">
-    </div>
-    <div class="test">
-        <label>Name <input type="text"></label>
-        <p>Some more text.</p>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name</td>
-                    <td><input type="text"></td>
-                    <td>Last name</td>
-                    <td><input type="text"></td>
-                </tr>
-        </table>
-    </div>
-    <div>
-        <table>
-                <tr class="test">
-                    <td>First name <input type="text"></td>
-                    <td>Last name <input type="text"></td>
-                </tr>
-        </table>
-    </div>
-</div>
-<script>
-var id = 0;
-var testContainer = document.getElementById("test-container");
-var tests = testContainer.getElementsByClassName("test");
-for (let test of tests) {
-    if (window.internals)
-        internals.substituteWithAlternativePresentationButton(test.children, ++id);
-}
-
-// Programmatically add element
-var pElement = testContainer.appendChild(document.createElement("p"));
-if (window.internals)
-    internals.substituteWithAlternativePresentationButton([pElement], ++id);
-</script>
-</body>
-</html>
index a5b338e..7fc96eb 100644 (file)
@@ -1195,10 +1195,6 @@ webkit.org/b/179989 fast/css3-text/css3-text-justify/getComputedStyle/getCompute
 webkit.org/b/179989 fast/css3-text/css3-text-align-last/getComputedStyle/getComputedStyle-text-align-last-inherited.html [ Failure ]
 webkit.org/b/179989 fast/css3-text/css3-text-align-last/getComputedStyle/getComputedStyle-text-align-last.html [ Failure ]
 
-# These tests rely on an iOS feature.
-webkit.org/b/180148 accessibility/alternative-presentation-button-input-type.html [ Skip ]
-webkit.org/b/180148 accessibility/alternative-presentation-button.html [ Skip ]
-
 #////////////////////////////////////////////////////////////////////////////////////////
 # End of Expected failures.
 #
index ab09393..dccc4a2 100644 (file)
@@ -13,7 +13,6 @@ media/controls/ipad [ Pass ]
 media/ios [ Pass ]
 quicklook [ Pass ]
 
-fast/forms/alternative-presentation-button [ Pass ]
 fast/text-autosizing/ios [ Pass ]
 fast/zooming/ios [ Pass ]
 http/tests/preload/viewport [ Pass ]
diff --git a/LayoutTests/platform/ios/fast/forms/alternative-presentation-button/replacement-expected.txt b/LayoutTests/platform/ios/fast/forms/alternative-presentation-button/replacement-expected.txt
deleted file mode 100644 (file)
index 66f441f..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-layer at (0,0) size 800x600
-  RenderView at (0,0) size 800x600
-layer at (0,0) size 800x363
-  RenderBlock {HTML} at (0,0) size 800x363
-    RenderBody {BODY} at (8,8) size 784x339
-      RenderBlock {DIV} at (0,0) size 784x339
-        RenderBlock {DIV} at (0,0) size 784x39
-          RenderButton {INPUT} at (2,2) size 199x36 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)]
-            RenderBlock (anonymous) at (6,3) size 187x29
-              RenderBlock {DIV} at (0,0) size 186x28
-                RenderBlock {DIV} at (0,0) size 186x0
-                  RenderBlock {DIV} at (0,0) size 186x0
-                RenderBlock {DIV} at (0,0) size 186x28
-                  RenderBlock (anonymous) at (0,0) size 186x14
-                    RenderInline {SPAN} at (0,0) size 169x14
-                      RenderText {#text} at (0,0) size 169x14
-                        text run at (0,0) width 169: "alternative presentation button title"
-                  RenderBlock {DIV} at (0,14) size 186x14
-                    RenderText {#text} at (0,0) size 186x14
-                      text run at (0,0) width 186: "alternative presentation button subtitle"
-          RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,39) size 784x40
-          RenderBlock (anonymous) at (0,0) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-          RenderBlock (anonymous) at (0,0) size 784x40
-            RenderBlock {DIV} at (0,0) size 784x40
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x40
-                RenderBlock (anonymous) at (0,0) size 784x20
-                  RenderInline {SPAN} at (0,0) size 224x19
-                    RenderText {#text} at (0,0) size 224x19
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,20) size 784x20
-                  RenderText {#text} at (0,0) size 246x19
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-          RenderBlock (anonymous) at (0,40) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,95) size 784x40
-          RenderBlock {P} at (0,0) size 784x40
-            RenderBlock {DIV} at (0,0) size 784x40
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x40
-                RenderBlock (anonymous) at (0,0) size 784x20
-                  RenderInline {SPAN} at (0,0) size 224x19
-                    RenderText {#text} at (0,0) size 224x19
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,20) size 784x20
-                  RenderText {#text} at (0,0) size 246x19
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {DIV} at (0,151) size 784x40
-          RenderBlock (anonymous) at (0,0) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-          RenderBlock (anonymous) at (0,0) size 784x40
-            RenderBlock {DIV} at (0,0) size 784x40
-              RenderBlock {DIV} at (0,0) size 784x0
-                RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x40
-                RenderBlock (anonymous) at (0,0) size 784x20
-                  RenderInline {SPAN} at (0,0) size 224x19
-                    RenderText {#text} at (0,0) size 224x19
-                      text run at (0,0) width 224: "alternative presentation button title"
-                RenderBlock {DIV} at (0,20) size 784x20
-                  RenderText {#text} at (0,0) size 246x19
-                    text run at (0,0) width 246: "alternative presentation button subtitle"
-          RenderBlock (anonymous) at (0,40) size 784x0
-            RenderInline {LABEL} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-            RenderText {#text} at (0,0) size 0x0
-        RenderBlock {DIV} at (0,191) size 784x46
-          RenderTable {TABLE} at (0,0) size 252x46
-            RenderTableSection {TBODY} at (0,0) size 252x46
-              RenderTableRow {TR} at (0,2) size 252x42
-                RenderTableCell {TD} at (2,2) size 248x42 [r=0 c=0 rs=1 cs=1]
-                  RenderBlock {DIV} at (1,1) size 246x40
-                    RenderBlock {DIV} at (0,0) size 246x0
-                      RenderBlock {DIV} at (0,0) size 246x0
-                    RenderBlock {DIV} at (0,0) size 246x40
-                      RenderBlock (anonymous) at (0,0) size 246x20
-                        RenderInline {SPAN} at (0,0) size 224x19
-                          RenderText {#text} at (0,0) size 224x19
-                            text run at (0,0) width 224: "alternative presentation button title"
-                      RenderBlock {DIV} at (0,20) size 246x20
-                        RenderText {#text} at (0,0) size 246x19
-                          text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {DIV} at (0,237) size 784x46
-          RenderTable {TABLE} at (0,0) size 252x46
-            RenderTableSection {TBODY} at (0,0) size 252x46
-              RenderTableRow {TR} at (0,2) size 252x42
-                RenderTableCell {TD} at (2,2) size 248x42 [r=0 c=0 rs=1 cs=1]
-                  RenderBlock {DIV} at (1,1) size 246x40
-                    RenderBlock {DIV} at (0,0) size 246x0
-                      RenderBlock {DIV} at (0,0) size 246x0
-                    RenderBlock {DIV} at (0,0) size 246x40
-                      RenderBlock (anonymous) at (0,0) size 246x20
-                        RenderInline {SPAN} at (0,0) size 224x19
-                          RenderText {#text} at (0,0) size 224x19
-                            text run at (0,0) width 224: "alternative presentation button title"
-                      RenderBlock {DIV} at (0,20) size 246x20
-                        RenderText {#text} at (0,0) size 246x19
-                          text run at (0,0) width 246: "alternative presentation button subtitle"
-        RenderBlock {P} at (0,299) size 784x40
-          RenderBlock {DIV} at (0,0) size 784x40
-            RenderBlock {DIV} at (0,0) size 784x0
-              RenderBlock {DIV} at (0,0) size 784x0
-            RenderBlock {DIV} at (0,0) size 784x40
-              RenderBlock (anonymous) at (0,0) size 784x20
-                RenderInline {SPAN} at (0,0) size 224x19
-                  RenderText {#text} at (0,0) size 224x19
-                    text run at (0,0) width 224: "alternative presentation button title"
-              RenderBlock {DIV} at (0,20) size 784x20
-                RenderText {#text} at (0,0) size 246x19
-                  text run at (0,0) width 246: "alternative presentation button subtitle"
index df99fe6..e9e951d 100644 (file)
@@ -12,9 +12,6 @@ editing/mac [ Pass ]
 fast/scrolling/latching [ Pass ]
 media/mac [ Pass ]
 
-fast/forms/alternative-presentation-button [ Pass ]
-accessibility/alternative-presentation-button-input-type.html [ Pass ]
-accessibility/alternative-presentation-button.html [ Pass ]
 fast/forms/search/search-padding-cancel-results-buttons.html [ Pass ]
 fast/forms/search/search-results-hidden-crash.html [ Pass ]
 
index bf313a4..f09b518 100644 (file)
@@ -1,3 +1,15 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2017-12-19  Saam Barati  <sbarati@apple.com>
 
         We forgot to do index masking for in bounds int32 arrays in the FTL
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index 807c7b6..5644e06 100644 (file)
@@ -1,3 +1,59 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * DerivedSources.make:
+        * English.lproj/Localizable.strings:
+        * SourcesCocoa.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * dom/Element.h:
+        * editing/Editor.cpp:
+        (WebCore::Editor::clear):
+        (WebCore::Editor::substituteWithAlternativePresentationButton): Deleted.
+        (WebCore::Editor::removeAlternativePresentationButton): Deleted.
+        (WebCore::Editor::elementsReplacedByAlternativePresentationButton): Deleted.
+        (WebCore::Editor::didInsertAlternativePresentationButtonElement): Deleted.
+        (WebCore::Editor::didRemoveAlternativePresentationButtonElement): Deleted.
+        * editing/Editor.h:
+        * editing/cocoa/AlternativePresentationButtonSubstitution.cpp: Removed.
+        * editing/cocoa/AlternativePresentationButtonSubstitution.h: Removed.
+        * html/HTMLInputElement.cpp:
+        (WebCore::HTMLInputElement::updateType):
+        (WebCore::HTMLInputElement::parseAttribute):
+        (WebCore::HTMLInputElement::willAttachRenderers):
+        (WebCore::HTMLInputElement::alternativePresentationButtonElement const): Deleted.
+        (WebCore::HTMLInputElement::setTypeWithoutUpdatingAttribute): Deleted.
+        (WebCore::HTMLInputElement::createInputType): Deleted.
+        * html/HTMLInputElement.h:
+        * html/InputType.h:
+        (WebCore::InputType::alternativePresentationButtonElement const): Deleted.
+        * html/InputTypeNames.cpp:
+        (WebCore::InputTypeNames::alternativePresentationButton): Deleted.
+        * html/InputTypeNames.h:
+        * html/shadow/cocoa/AlternativePresentationButtonElement.cpp: Removed.
+        * html/shadow/cocoa/AlternativePresentationButtonElement.h: Removed.
+        * html/shadow/cocoa/AlternativePresentationButtonInputType.cpp: Removed.
+        * html/shadow/cocoa/AlternativePresentationButtonInputType.h: Removed.
+        * page/ChromeClient.h:
+        * platform/LocalizedStrings.cpp:
+        (WebCore::AXAlternativePresentationButtonLabel): Deleted.
+        (WebCore::alternativePresentationButtonTitle): Deleted.
+        (WebCore::alternativePresentationButtonSubtitle): Deleted.
+        * platform/LocalizedStrings.h:
+        * testing/Internals.cpp:
+        (WebCore::Internals::substituteWithAlternativePresentationButton): Deleted.
+        (WebCore::Internals::removeAlternativePresentationButton): Deleted.
+        (WebCore::Internals::elementsReplacedByAlternativePresentationButton): Deleted.
+        * testing/Internals.h:
+        * testing/Internals.idl:
+
 2017-12-20  Chris Dumez  <cdumez@apple.com>
 
         Do not reuse resource for memory cache if selected service worker differs
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index df23839..b445beb 100644 (file)
@@ -1024,13 +1024,9 @@ endif
 endif # IOS
 
 vpath %.in $(WEBKITADDITIONS_HEADER_SEARCH_PATHS)
-vpath %.css $(WEBKITADDITIONS_HEADER_SEARCH_PATHS)
 
 ADDITIONAL_EVENT_NAMES =
 ADDITIONAL_EVENT_TARGET_FACTORY =
-ADDITIONAL_USER_AGENT_STYLE_SHEETS =
-
--include WebCoreDerivedSourcesAdditions.make
 
 JS_BINDING_IDLS += $(ADDITIONAL_BINDING_IDLS)
 
@@ -1221,40 +1217,38 @@ ColorData.cpp : platform/ColorData.gperf $(WebCore)/make-hash-tools.pl
 
 # user agent style sheets
 
-USER_AGENT_STYLE_SHEETS = css/html.css css/quirks.css css/plugIns.css css/svg.css
+USER_AGENT_STYLE_SHEETS = $(WebCore)/css/html.css $(WebCore)/css/quirks.css $(WebCore)/css/plugIns.css $(WebCore)/css/svg.css
 
 ifeq ($(findstring ENABLE_MATHML,$(FEATURE_DEFINES)), ENABLE_MATHML)
-    USER_AGENT_STYLE_SHEETS += css/mathml.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/css/mathml.css
 endif
 
 ifeq ($(findstring ENABLE_VIDEO,$(FEATURE_DEFINES)), ENABLE_VIDEO)
-    USER_AGENT_STYLE_SHEETS += css/mediaControls.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/css/mediaControls.css
 endif
 
 ifeq ($(findstring ENABLE_FULLSCREEN_API,$(FEATURE_DEFINES)), ENABLE_FULLSCREEN_API)
-    USER_AGENT_STYLE_SHEETS += css/fullscreen.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/css/fullscreen.css
 endif
 
 ifeq ($(findstring ENABLE_SERVICE_CONTROLS,$(FEATURE_DEFINES)), ENABLE_SERVICE_CONTROLS)
-    USER_AGENT_STYLE_SHEETS += html/shadow/mac/imageControlsMac.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/html/shadow/mac/imageControlsMac.css
 endif
 
 ifeq ($(OS),MACOS)
-    USER_AGENT_STYLE_SHEETS += Modules/plugins/QuickTimePluginReplacement.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/Modules/plugins/QuickTimePluginReplacement.css
 endif
 
 ifeq ($(OS), Windows_NT)
-    USER_AGENT_STYLE_SHEETS += css/themeWin.css css/themeWinQuirks.css
+    USER_AGENT_STYLE_SHEETS += $(WebCore)/css/themeWin.css $(WebCore)/css/themeWinQuirks.css
 endif
 
 ifeq ($(findstring ENABLE_METER_ELEMENT,$(FEATURE_DEFINES)), ENABLE_METER_ELEMENT)
-       USER_AGENT_STYLE_SHEETS += html/shadow/meterElementShadow.css
+       USER_AGENT_STYLE_SHEETS += $(WebCore)/html/shadow/meterElementShadow.css
 endif
 
-USER_AGENT_STYLE_SHEETS += $(ADDITIONAL_USER_AGENT_STYLE_SHEETS)
-
 UserAgentStyleSheets.h : css/make-css-file-arrays.pl bindings/scripts/preprocessor.pm $(USER_AGENT_STYLE_SHEETS) $(PLATFORM_FEATURE_DEFINES)
-       $(PERL) $< --defines "$(FEATURE_DEFINES)" $@ UserAgentStyleSheetsData.cpp $(foreach file, $^, $(if $(findstring $(notdir $(file)), $(USER_AGENT_STYLE_SHEETS)), $(file)))
+       $(PERL) $< --defines "$(FEATURE_DEFINES)" $@ UserAgentStyleSheetsData.cpp $(USER_AGENT_STYLE_SHEETS)
 
 # --------
 
index 8cdcf3b..755722e 100644 (file)
 /* Option in segmented control for choosing list type in text editing */
 "•" = "•";
 
-/* Label for the alternative presentation button. */
-"alternative presentation button" = "alternative presentation button";
-
-/* Alternative presentation button title. */
-"alternative presentation button title" = "alternative presentation button title";
-
-/* Alternative presentation button subtitle. */
-"alternative presentation button subtitle" = "alternative presentation button subtitle";
-
 /* Label for strong password. */
 "strong password" = "strong password";
 
index 0f0713d..978670a 100644 (file)
@@ -1,3 +1,15 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2017-12-20  Andy Estes  <aestes@apple.com>
 
         [Apple Pay] Tell PassKit whether Apple Pay JS or Payment Request was used to start an Apple Pay session
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index 16d1f61..d28deba 100644 (file)
@@ -367,14 +367,6 @@ platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm
 
 platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp
 
-#if ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT
-
-    editing/cocoa/AlternativePresentationButtonSubstitution.cpp
-    html/shadow/cocoa/AlternativePresentationButtonElement.cpp
-    html/shadow/cocoa/AlternativePresentationButtonInputType.cpp
-
-#endif
-
 #if ENABLE_APPLE_PAY
 
     Modules/applepay/ApplePayContactField.cpp
index dd7f6be..7f9313f 100644 (file)
                CE7B2DB11586ABAD0098B3FA /* TextAlternativeWithRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextAlternativeWithRange.h; sourceTree = "<group>"; };
                CE7B2DB21586ABAD0098B3FA /* TextAlternativeWithRange.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TextAlternativeWithRange.mm; sourceTree = "<group>"; };
                CE7E17821C83A49100AD06AF /* ContentSecurityPolicyHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ContentSecurityPolicyHash.h; path = csp/ContentSecurityPolicyHash.h; sourceTree = "<group>"; };
-               CEB828571FBBA0CE005CBEA1 /* AlternativePresentationButtonElement.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AlternativePresentationButtonElement.h; sourceTree = "<group>"; };
-               CEB828581FBBA0CE005CBEA1 /* AlternativePresentationButtonElement.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = AlternativePresentationButtonElement.cpp; sourceTree = "<group>"; };
-               CEB8285A1FBBB273005CBEA1 /* AlternativePresentationButtonInputType.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AlternativePresentationButtonInputType.h; sourceTree = "<group>"; };
-               CEB8285B1FBBB273005CBEA1 /* AlternativePresentationButtonInputType.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = AlternativePresentationButtonInputType.cpp; sourceTree = "<group>"; };
-               CEB828621FBCC142005CBEA1 /* AlternativePresentationButtonSubstitution.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AlternativePresentationButtonSubstitution.h; sourceTree = "<group>"; };
-               CEB828641FBCE0D3005CBEA1 /* AlternativePresentationButtonSubstitution.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = AlternativePresentationButtonSubstitution.cpp; sourceTree = "<group>"; };
                CECADFC2153778FF00E37068 /* DictationAlternative.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DictationAlternative.cpp; sourceTree = "<group>"; };
                CECADFC3153778FF00E37068 /* DictationAlternative.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DictationAlternative.h; sourceTree = "<group>"; };
                CECADFC4153778FF00E37068 /* DictationCommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DictationCommand.cpp; sourceTree = "<group>"; };
                4150F9ED12B6E0990008C860 /* shadow */ = {
                        isa = PBXGroup;
                        children = (
-                               CE0B30531FACE93500E3FA79 /* cocoa */,
                                51C4AA5118B28357007BFE9B /* mac */,
                                7C1E97251A9F9834007BF0FB /* AutoFillButtonElement.cpp */,
                                7C1E97261A9F9834007BF0FB /* AutoFillButtonElement.h */,
                7C3E510718DF8F1200C112F7 /* cocoa */ = {
                        isa = PBXGroup;
                        children = (
-                               CEB828641FBCE0D3005CBEA1 /* AlternativePresentationButtonSubstitution.cpp */,
-                               CEB828621FBCC142005CBEA1 /* AlternativePresentationButtonSubstitution.h */,
                                C5227DEF1C3C6DD700F5ED54 /* DataDetection.h */,
                                C5227DF01C3C6DD700F5ED54 /* DataDetection.mm */,
                                9B55EEE81B3E8898005342BC /* EditorCocoa.mm */,
                        path = mediasource;
                        sourceTree = "<group>";
                };
-               CE0B30531FACE93500E3FA79 /* cocoa */ = {
-                       isa = PBXGroup;
-                       children = (
-                               CEB828581FBBA0CE005CBEA1 /* AlternativePresentationButtonElement.cpp */,
-                               CEB828571FBBA0CE005CBEA1 /* AlternativePresentationButtonElement.h */,
-                               CEB8285B1FBBB273005CBEA1 /* AlternativePresentationButtonInputType.cpp */,
-                               CEB8285A1FBBB273005CBEA1 /* AlternativePresentationButtonInputType.h */,
-                       );
-                       path = cocoa;
-                       sourceTree = "<group>";
-               };
                CE17AD141C58522F005F4799 /* csp */ = {
                        isa = PBXGroup;
                        children = (
index d8d004f..dd7f6be 100644 (file)
                C105DA640F3AA6B8001DD44F /* TextEncodingDetector.h in Headers */ = {isa = PBXBuildFile; fileRef = C105DA630F3AA6B8001DD44F /* TextEncodingDetector.h */; };
                C2015C0A1BE6FEB200822389 /* FontVariantBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = C2015C091BE6FE2C00822389 /* FontVariantBuilder.h */; };
                C21DF2EA1D9E4E9900F5B24C /* CSSFontVariationValue.h in Headers */ = {isa = PBXBuildFile; fileRef = C21DF2E81D9E4E9900F5B24C /* CSSFontVariationValue.h */; };
+               C2458E631FE897B000594759 /* FontCacheCoreText.h in Headers */ = {isa = PBXBuildFile; fileRef = C2458E611FE8979E00594759 /* FontCacheCoreText.h */; settings = {ATTRIBUTES = (Private, ); }; };
                C26017A41C72DC9900F74A16 /* CSSFontFaceSet.h in Headers */ = {isa = PBXBuildFile; fileRef = C26017A21C72DC9900F74A16 /* CSSFontFaceSet.h */; };
                C280833F1C6DC26F001451B6 /* JSFontFace.h in Headers */ = {isa = PBXBuildFile; fileRef = C280833E1C6DC22C001451B6 /* JSFontFace.h */; };
                C2AB0AF71E6B3C6C001348C5 /* FontSelectionAlgorithm.h in Headers */ = {isa = PBXBuildFile; fileRef = C2AB0AF51E6B3C6C001348C5 /* FontSelectionAlgorithm.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E47C392D1FE6E0F300BBBC6B /* RenderTreeBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C392A1FE6E0DE00BBBC6B /* RenderTreeBuilder.h */; };
                E47C392E1FE6E0F700BBBC6B /* RenderTreePosition.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39241FE6E0DB00BBBC6B /* RenderTreePosition.h */; };
                E47C392F1FE6E0F900BBBC6B /* RenderTreeUpdater.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C392C1FE6E0DF00BBBC6B /* RenderTreeUpdater.h */; };
-               E47C39301FE6E0FD00BBBC6B /* RenderTreeUpdaterFirstLetter.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39261FE6E0DC00BBBC6B /* RenderTreeUpdaterFirstLetter.h */; };
+               E47C39301FE6E0FD00BBBC6B /* RenderTreeBuilderFirstLetter.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39261FE6E0DC00BBBC6B /* RenderTreeBuilderFirstLetter.h */; };
                E47C39311FE6E10200BBBC6B /* RenderTreeUpdaterGeneratedContent.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39251FE6E0DB00BBBC6B /* RenderTreeUpdaterGeneratedContent.h */; };
-               E47C39321FE6E10500BBBC6B /* RenderTreeUpdaterListItem.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39281FE6E0DD00BBBC6B /* RenderTreeUpdaterListItem.h */; };
-               E47C39331FE6E10800BBBC6B /* RenderTreeUpdaterMultiColumn.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39271FE6E0DC00BBBC6B /* RenderTreeUpdaterMultiColumn.h */; };
+               E47C39321FE6E10500BBBC6B /* RenderTreeBuilderList.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39281FE6E0DD00BBBC6B /* RenderTreeBuilderList.h */; };
+               E47C39331FE6E10800BBBC6B /* RenderTreeBuilderMultiColumn.h in Headers */ = {isa = PBXBuildFile; fileRef = E47C39271FE6E0DC00BBBC6B /* RenderTreeBuilderMultiColumn.h */; };
                E47E276516036ED200EE2AFB /* ExtensionStyleSheets.h in Headers */ = {isa = PBXBuildFile; fileRef = E47E276416036ED200EE2AFB /* ExtensionStyleSheets.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E48137B91DB3B526005C59BF /* StyleValidity.h in Headers */ = {isa = PBXBuildFile; fileRef = E48137B81DB3B526005C59BF /* StyleValidity.h */; settings = {ATTRIBUTES = (Private, ); }; };
                E48944A3180B57D800F165D8 /* SimpleLineLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = E48944A1180B57D800F165D8 /* SimpleLineLayout.h */; settings = {ATTRIBUTES = (Private, ); }; };
                C2015C091BE6FE2C00822389 /* FontVariantBuilder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FontVariantBuilder.h; sourceTree = "<group>"; };
                C21DF2E71D9E4E9900F5B24C /* CSSFontVariationValue.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSFontVariationValue.cpp; sourceTree = "<group>"; };
                C21DF2E81D9E4E9900F5B24C /* CSSFontVariationValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSFontVariationValue.h; sourceTree = "<group>"; };
+               C2458E611FE8979E00594759 /* FontCacheCoreText.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FontCacheCoreText.h; sourceTree = "<group>"; };
                C26017A11C72DC9900F74A16 /* CSSFontFaceSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSFontFaceSet.cpp; sourceTree = "<group>"; };
                C26017A21C72DC9900F74A16 /* CSSFontFaceSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSFontFaceSet.h; sourceTree = "<group>"; };
                C280833C1C6DB194001451B6 /* FontFace.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = FontFace.idl; sourceTree = "<group>"; };
                E47B4BE70E71241600038854 /* CachedResourceHandle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CachedResourceHandle.cpp; sourceTree = "<group>"; };
                E47C391F1FE6E0D800BBBC6B /* RenderTreeUpdater.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeUpdater.cpp; sourceTree = "<group>"; };
                E47C39201FE6E0D900BBBC6B /* RenderTreeBuilder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeBuilder.cpp; sourceTree = "<group>"; };
-               E47C39211FE6E0DA00BBBC6B /* RenderTreeUpdaterFirstLetter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeUpdaterFirstLetter.cpp; sourceTree = "<group>"; };
+               E47C39211FE6E0DA00BBBC6B /* RenderTreeBuilderFirstLetter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeBuilderFirstLetter.cpp; sourceTree = "<group>"; };
                E47C39221FE6E0DA00BBBC6B /* RenderTreeUpdaterGeneratedContent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeUpdaterGeneratedContent.cpp; sourceTree = "<group>"; };
-               E47C39231FE6E0DA00BBBC6B /* RenderTreeUpdaterMultiColumn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeUpdaterMultiColumn.cpp; sourceTree = "<group>"; };
+               E47C39231FE6E0DA00BBBC6B /* RenderTreeBuilderMultiColumn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeBuilderMultiColumn.cpp; sourceTree = "<group>"; };
                E47C39241FE6E0DB00BBBC6B /* RenderTreePosition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreePosition.h; sourceTree = "<group>"; };
                E47C39251FE6E0DB00BBBC6B /* RenderTreeUpdaterGeneratedContent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeUpdaterGeneratedContent.h; sourceTree = "<group>"; };
-               E47C39261FE6E0DC00BBBC6B /* RenderTreeUpdaterFirstLetter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeUpdaterFirstLetter.h; sourceTree = "<group>"; };
-               E47C39271FE6E0DC00BBBC6B /* RenderTreeUpdaterMultiColumn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeUpdaterMultiColumn.h; sourceTree = "<group>"; };
-               E47C39281FE6E0DD00BBBC6B /* RenderTreeUpdaterListItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeUpdaterListItem.h; sourceTree = "<group>"; };
+               E47C39261FE6E0DC00BBBC6B /* RenderTreeBuilderFirstLetter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeBuilderFirstLetter.h; sourceTree = "<group>"; };
+               E47C39271FE6E0DC00BBBC6B /* RenderTreeBuilderMultiColumn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeBuilderMultiColumn.h; sourceTree = "<group>"; };
+               E47C39281FE6E0DD00BBBC6B /* RenderTreeBuilderList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeBuilderList.h; sourceTree = "<group>"; };
                E47C39291FE6E0DE00BBBC6B /* RenderTreePosition.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreePosition.cpp; sourceTree = "<group>"; };
                E47C392A1FE6E0DE00BBBC6B /* RenderTreeBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeBuilder.h; sourceTree = "<group>"; };
-               E47C392B1FE6E0DF00BBBC6B /* RenderTreeUpdaterListItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeUpdaterListItem.cpp; sourceTree = "<group>"; };
+               E47C392B1FE6E0DF00BBBC6B /* RenderTreeBuilderList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTreeBuilderList.cpp; sourceTree = "<group>"; };
                E47C392C1FE6E0DF00BBBC6B /* RenderTreeUpdater.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTreeUpdater.h; sourceTree = "<group>"; };
                E47E276416036ED200EE2AFB /* ExtensionStyleSheets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExtensionStyleSheets.h; sourceTree = "<group>"; };
                E47E276716036EDC00EE2AFB /* ExtensionStyleSheets.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExtensionStyleSheets.cpp; sourceTree = "<group>"; };
                        isa = PBXGroup;
                        children = (
                                1C3969CF1B74211E002BCFA7 /* FontCacheCoreText.cpp */,
+                               C2458E611FE8979E00594759 /* FontCacheCoreText.h */,
                                B2AFFC780D00A5C10030074D /* FontCascadeCocoa.mm */,
                                7C4EDD731A7B607800198C4D /* FontCocoa.mm */,
                                1C12AC2C1EE779950079E0A0 /* FontDescriptionCocoa.cpp */,
                        children = (
                                E47C39201FE6E0D900BBBC6B /* RenderTreeBuilder.cpp */,
                                E47C392A1FE6E0DE00BBBC6B /* RenderTreeBuilder.h */,
+                               E47C39211FE6E0DA00BBBC6B /* RenderTreeBuilderFirstLetter.cpp */,
+                               E47C39261FE6E0DC00BBBC6B /* RenderTreeBuilderFirstLetter.h */,
+                               E47C392B1FE6E0DF00BBBC6B /* RenderTreeBuilderList.cpp */,
+                               E47C39281FE6E0DD00BBBC6B /* RenderTreeBuilderList.h */,
+                               E47C39231FE6E0DA00BBBC6B /* RenderTreeBuilderMultiColumn.cpp */,
+                               E47C39271FE6E0DC00BBBC6B /* RenderTreeBuilderMultiColumn.h */,
                                119340761FE8B92300935F1E /* RenderTreeBuilderTable.cpp */,
                                119340771FE8B92300935F1E /* RenderTreeBuilderTable.h */,
                                E47C39291FE6E0DE00BBBC6B /* RenderTreePosition.cpp */,
                                E47C39241FE6E0DB00BBBC6B /* RenderTreePosition.h */,
                                E47C391F1FE6E0D800BBBC6B /* RenderTreeUpdater.cpp */,
                                E47C392C1FE6E0DF00BBBC6B /* RenderTreeUpdater.h */,
-                               E47C39211FE6E0DA00BBBC6B /* RenderTreeUpdaterFirstLetter.cpp */,
-                               E47C39261FE6E0DC00BBBC6B /* RenderTreeUpdaterFirstLetter.h */,
                                E47C39221FE6E0DA00BBBC6B /* RenderTreeUpdaterGeneratedContent.cpp */,
                                E47C39251FE6E0DB00BBBC6B /* RenderTreeUpdaterGeneratedContent.h */,
-                               E47C392B1FE6E0DF00BBBC6B /* RenderTreeUpdaterListItem.cpp */,
-                               E47C39281FE6E0DD00BBBC6B /* RenderTreeUpdaterListItem.h */,
-                               E47C39231FE6E0DA00BBBC6B /* RenderTreeUpdaterMultiColumn.cpp */,
-                               E47C39271FE6E0DC00BBBC6B /* RenderTreeUpdaterMultiColumn.h */,
                        );
                        path = updating;
                        sourceTree = "<group>";
                                1AC2D89D1B1E291F00D52E87 /* FontAntialiasingStateSaver.h in Headers */,
                                BCB92D4F1293550B00C8387F /* FontBaseline.h in Headers */,
                                B2C3DA630D006CD600EF6F26 /* FontCache.h in Headers */,
+                               C2458E631FE897B000594759 /* FontCacheCoreText.h in Headers */,
                                B2C3DA610D006CD600EF6F26 /* FontCascade.h in Headers */,
                                B2C3DA680D006CD600EF6F26 /* FontCascadeFonts.h in Headers */,
                                B2AFFC7E0D00A5C10030074D /* FontCustomPlatformData.h in Headers */,
                                977B3878122883E900B81FF8 /* HTMLTokenizer.h in Headers */,
                                0707568C142262D600414161 /* HTMLTrackElement.h in Headers */,
                                977B37261228721700B81FF8 /* HTMLTreeBuilder.h in Headers */,
+                               E47C39301FE6E0FD00BBBC6B /* RenderTreeBuilderFirstLetter.h in Headers */,
                                A8EA79F20A1916DF00A8EF5F /* HTMLUListElement.h in Headers */,
                                AD49914318F0815100BF0092 /* HTMLUnknownElement.h in Headers */,
                                E44613AB0CD6331000FADA75 /* HTMLVideoElement.h in Headers */,
                                119340791FE8B92300935F1E /* RenderTreeBuilderTable.h in Headers */,
                                E47C392E1FE6E0F700BBBC6B /* RenderTreePosition.h in Headers */,
                                E47C392F1FE6E0F900BBBC6B /* RenderTreeUpdater.h in Headers */,
-                               E47C39301FE6E0FD00BBBC6B /* RenderTreeUpdaterFirstLetter.h in Headers */,
                                E47C39311FE6E10200BBBC6B /* RenderTreeUpdaterGeneratedContent.h in Headers */,
-                               E47C39321FE6E10500BBBC6B /* RenderTreeUpdaterListItem.h in Headers */,
-                               E47C39331FE6E10800BBBC6B /* RenderTreeUpdaterMultiColumn.h in Headers */,
+                               E47C39321FE6E10500BBBC6B /* RenderTreeBuilderList.h in Headers */,
+                               E47C39331FE6E10800BBBC6B /* RenderTreeBuilderMultiColumn.h in Headers */,
                                E44614520CD68A3500FADA75 /* RenderVideo.h in Headers */,
                                BCEA4868097D93020094C9E4 /* RenderView.h in Headers */,
                                BE20507E18A458C20080647E /* RenderVTTCue.h in Headers */,
index a128d27..fe87db1 100644 (file)
@@ -280,7 +280,6 @@ public:
 
     RefPtr<ShadowRoot> userAgentShadowRoot() const;
     WEBCORE_EXPORT ShadowRoot& ensureUserAgentShadowRoot();
-    void removeShadowRoot();
 
     void setIsDefinedCustomElement(JSCustomElementInterface&);
     void setIsFailedCustomElement(JSCustomElementInterface&);
@@ -637,6 +636,8 @@ private:
     Ref<Node> cloneNodeInternal(Document&, CloningOperation) override;
     virtual Ref<Element> cloneElementWithoutAttributesAndChildren(Document&);
 
+    void removeShadowRoot();
+
     const RenderStyle& resolveComputedStyle();
     const RenderStyle& resolvePseudoElementStyle(PseudoId);
 
index 5a79465..96ec1e9 100644 (file)
 #include "ServicesOverlayController.h"
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-#include "AlternativePresentationButtonElement.h"
-#include "AlternativePresentationButtonSubstitution.h"
-#endif
-
 namespace WebCore {
 
 static bool dispatchBeforeInputEvent(Element& element, const AtomicString& inputType, const String& data = { }, RefPtr<DataTransfer>&& dataTransfer = nullptr, const Vector<RefPtr<StaticRange>>& targetRanges = { }, bool cancelable = true)
@@ -1179,11 +1174,6 @@ void Editor::clear()
     m_customCompositionUnderlines.clear();
     m_shouldStyleWithCSS = false;
     m_defaultParagraphSeparator = EditorParagraphSeparatorIsDiv;
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    m_alternativePresentationButtonElementToSubstitutionMap.clear();
-    m_alternativePresentationButtonIdentifierToElementMap.clear();
-    m_lastAlternativePresentationButtonSubstitution = nullptr;
-#endif
 }
 
 bool Editor::insertText(const String& text, Event* triggeringEvent, TextEventInputType inputType)
@@ -3823,66 +3813,6 @@ void Editor::insertAttachmentFromFile(const String& identifier, const Attachment
 
 #endif // ENABLE(ATTACHMENT_ELEMENT)
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-void Editor::substituteWithAlternativePresentationButton(Vector<Ref<Element>>&& elements, const String& identifier)
-{
-    if (elements.isEmpty())
-        return;
-
-    // The implementation of the first element is exchanged for the alternative presentation button.
-    // All other elements are hidden.
-    Ref<Element> elementForAlternativePresentation = WTFMove(elements[0]);
-    elements.remove(0);
-
-    m_lastAlternativePresentationButtonIdentifier = identifier;
-    if (is<HTMLInputElement>(elementForAlternativePresentation))
-        m_lastAlternativePresentationButtonSubstitution = std::make_unique<AlternativePresentationButtonSubstitution>(downcast<HTMLInputElement>(elementForAlternativePresentation.get()), WTFMove(elements));
-    else {
-        // FIXME: This substitution is only safe to do if and only if elementForAlternativePresentation can support a user-
-        // agent shadow root and does not support an author shadow root. Not all elements meet this criterion (e.g. <details>).
-        // See <https://bugs.webkit.org/show_bug.cgi?id=180086> for more details.
-        m_lastAlternativePresentationButtonSubstitution = std::make_unique<AlternativePresentationButtonSubstitution>(elementForAlternativePresentation.get(), WTFMove(elements));
-    }
-    m_lastAlternativePresentationButtonSubstitution->apply();
-}
-
-void Editor::removeAlternativePresentationButton(const String& identifier)
-{
-    if (!m_alternativePresentationButtonIdentifierToElementMap.contains(identifier))
-        return;
-    auto* button = m_alternativePresentationButtonIdentifierToElementMap.take(identifier);
-    ASSERT(m_alternativePresentationButtonElementToSubstitutionMap.contains(button));
-    auto substitution = m_alternativePresentationButtonElementToSubstitutionMap.take(button);
-    substitution->unapply();
-}
-
-Vector<Ref<Element>> Editor::elementsReplacedByAlternativePresentationButton(const String& identifier)
-{
-    if (!m_alternativePresentationButtonIdentifierToElementMap.contains(identifier))
-        return { };
-    auto* button = m_alternativePresentationButtonIdentifierToElementMap.get(identifier);
-    ASSERT(m_alternativePresentationButtonElementToSubstitutionMap.contains(button));
-    auto substitution = m_alternativePresentationButtonElementToSubstitutionMap.get(button);
-    return substitution->replacedElements();
-}
-
-void Editor::didInsertAlternativePresentationButtonElement(AlternativePresentationButtonElement& button)
-{
-    ASSERT(!m_alternativePresentationButtonElementToSubstitutionMap.contains(&button));
-    ASSERT(!m_alternativePresentationButtonIdentifierToElementMap.contains(m_lastAlternativePresentationButtonIdentifier));
-    m_alternativePresentationButtonElementToSubstitutionMap.set(&button, WTFMove(m_lastAlternativePresentationButtonSubstitution));
-    m_alternativePresentationButtonIdentifierToElementMap.set(m_lastAlternativePresentationButtonIdentifier, &button);
-    button.setUniqueIdentifier(m_lastAlternativePresentationButtonIdentifier);
-}
-
-void Editor::didRemoveAlternativePresentationButtonElement(AlternativePresentationButtonElement& button)
-{
-    removeAlternativePresentationButton(button.uniqueIdentifier());
-}
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
 void Editor::handleAcceptedCandidate(TextCheckingResult acceptedCandidate)
 {
     const VisibleSelection& selection = m_frame.selection().selection();
index dfbda77..ed99802 100644 (file)
@@ -54,8 +54,6 @@ class KillRing;
 
 namespace WebCore {
 
-class AlternativePresentationButtonElement;
-class AlternativePresentationButtonSubstitution;
 class AlternativeTextController;
 class ArchiveResource;
 class DataTransfer;
@@ -513,19 +511,6 @@ public:
     void didRemoveAttachmentElement(HTMLAttachmentElement&);
 #endif
 
-    // FIXME: Find a better place for this functionality.
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    // FIXME: Remove the need to pass an identifier for the alternative presentation button.
-    WEBCORE_EXPORT void substituteWithAlternativePresentationButton(Vector<Ref<Element>>&&, const String&);
-    // FIXME: Have this take an AlternativePresentationButtonElement& instead of an identifier.
-    WEBCORE_EXPORT void removeAlternativePresentationButton(const String&);
-
-    WEBCORE_EXPORT Vector<Ref<Element>> elementsReplacedByAlternativePresentationButton(const String&);
-
-    void didInsertAlternativePresentationButtonElement(AlternativePresentationButtonElement&);
-    void didRemoveAlternativePresentationButtonElement(AlternativePresentationButtonElement&);
-#endif
-
 private:
     Document& document() const;
 
@@ -601,13 +586,6 @@ private:
     HashSet<String> m_removedAttachmentIdentifiers;
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    HashMap<AlternativePresentationButtonElement*, std::unique_ptr<AlternativePresentationButtonSubstitution>> m_alternativePresentationButtonElementToSubstitutionMap;
-    HashMap<String, AlternativePresentationButtonElement*> m_alternativePresentationButtonIdentifierToElementMap;
-    std::unique_ptr<AlternativePresentationButtonSubstitution> m_lastAlternativePresentationButtonSubstitution;
-    String m_lastAlternativePresentationButtonIdentifier;
-#endif
-
     VisibleSelection m_oldSelectionForEditorUIUpdate;
     Timer m_editorUIUpdateTimer;
     bool m_editorUIUpdateTimerShouldCheckSpellingAndGrammar { false };
diff --git a/Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.cpp b/Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.cpp
deleted file mode 100644 (file)
index 1f2a924..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "AlternativePresentationButtonSubstitution.h"
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include "AlternativePresentationButtonElement.h"
-#include "HTMLInputElement.h"
-#include "InputTypeNames.h"
-#include "ShadowRoot.h"
-#include "StyleProperties.h"
-
-namespace WebCore {
-
-AlternativePresentationButtonSubstitution::AlternativePresentationButtonSubstitution(HTMLInputElement& element, Vector<Ref<Element>>&& elementsToHide)
-    : m_shadowHost { makeRef(element) }
-{
-    initializeSavedDisplayStyles(WTFMove(elementsToHide));
-}
-
-AlternativePresentationButtonSubstitution::AlternativePresentationButtonSubstitution(Element& element, Vector<Ref<Element>>&& elementsToHide)
-    : m_shadowHost { makeRef(element) }
-    , m_alternativePresentationButtonElement { AlternativePresentationButtonElement::create(element.document()) }
-{
-    initializeSavedDisplayStyles(WTFMove(elementsToHide));
-}
-
-void AlternativePresentationButtonSubstitution::initializeSavedDisplayStyles(Vector<Ref<Element>>&& elements)
-{
-    m_savedDisplayStyles.reserveInitialCapacity(elements.size());
-    for (auto& element : elements) {
-        if (is<StyledElement>(element))
-            m_savedDisplayStyles.uncheckedAppend({ adoptRef(downcast<StyledElement>(element.leakRef())) });
-    }
-}
-
-void AlternativePresentationButtonSubstitution::apply()
-{
-    auto saveStyles = [&] {
-        for (auto& savedDisplayStyle : m_savedDisplayStyles) {
-            auto* styleProperties = savedDisplayStyle.element->inlineStyle();
-            if (!styleProperties)
-                continue;
-            savedDisplayStyle.value = styleProperties->getPropertyValue(CSSPropertyDisplay);
-            savedDisplayStyle.important = styleProperties->propertyIsImportant(CSSPropertyDisplay);
-            savedDisplayStyle.wasSpecified = true;
-        }
-    };
-    auto attachShadowRoot = [&] {
-        if (is<HTMLInputElement>(m_shadowHost)) {
-            m_savedShadowHostInputType = m_shadowHost->attributeWithoutSynchronization(HTMLNames::typeAttr);
-            auto& inputElement = downcast<HTMLInputElement>(m_shadowHost.get());
-            ASSERT(inputElement.type() != InputTypeNames::alternativePresentationButton());
-            inputElement.setTypeWithoutUpdatingAttribute(InputTypeNames::alternativePresentationButton());
-            return;
-        }
-        ASSERT(m_alternativePresentationButtonElement);
-        ASSERT(!m_shadowHost->shadowRoot());
-        ASSERT(!m_shadowHost->userAgentShadowRoot());
-        m_shadowHost->ensureUserAgentShadowRoot().appendChild(*m_alternativePresentationButtonElement);
-    };
-    auto hideElements = [&] {
-        for (auto& savedDisplayStyle : m_savedDisplayStyles)
-            savedDisplayStyle.element->setInlineStyleProperty(CSSPropertyDisplay, CSSValueNone, true); // important
-    };
-
-    ASSERT(!m_isApplied);
-    m_isApplied = true;
-    saveStyles();
-    attachShadowRoot();
-    hideElements();
-}
-
-void AlternativePresentationButtonSubstitution::unapply()
-{
-    auto detachShadowRoot = [&] {
-        if (is<HTMLInputElement>(m_shadowHost)) {
-            auto& inputElement = downcast<HTMLInputElement>(m_shadowHost.get());
-            if (inputElement.type() == InputTypeNames::alternativePresentationButton())
-                inputElement.setTypeWithoutUpdatingAttribute(m_savedShadowHostInputType);
-            return;
-        }
-        ASSERT(m_alternativePresentationButtonElement);
-        ASSERT(m_shadowHost->userAgentShadowRoot());
-        ASSERT(m_shadowHost->userAgentShadowRoot()->countChildNodes() == 1);
-        m_shadowHost->userAgentShadowRoot()->removeChild(*m_alternativePresentationButtonElement);
-        ASSERT(!m_shadowHost->userAgentShadowRoot()->countChildNodes());
-        m_shadowHost->removeShadowRoot();
-        m_shadowHost->invalidateStyleAndRenderersForSubtree();
-    };
-    auto restoreStyles = [&] {
-        for (auto& savedDisplayStyle : m_savedDisplayStyles) {
-            if (savedDisplayStyle.wasSpecified)
-                savedDisplayStyle.element->setInlineStyleProperty(CSSPropertyDisplay, savedDisplayStyle.value, savedDisplayStyle.important);
-            else
-                savedDisplayStyle.element->removeInlineStyleProperty(CSSPropertyDisplay);
-        }
-    };
-
-    ASSERT(m_isApplied);
-    m_isApplied = false;
-    restoreStyles();
-    detachShadowRoot();
-}
-
-Vector<Ref<Element>> AlternativePresentationButtonSubstitution::replacedElements()
-{
-    Vector<Ref<Element>> result;
-    result.reserveInitialCapacity(m_savedDisplayStyles.size() + 1);
-    result.uncheckedAppend(m_shadowHost.copyRef());
-    for (auto& savedDisplayStyle : m_savedDisplayStyles)
-        result.uncheckedAppend(savedDisplayStyle.element.copyRef());
-    return result;
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
diff --git a/Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.h b/Source/WebCore/editing/cocoa/AlternativePresentationButtonSubstitution.h
deleted file mode 100644 (file)
index 428a563..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include <wtf/RefPtr.h>
-#include <wtf/Vector.h>
-#include <wtf/text/AtomicString.h>
-
-namespace WebCore {
-
-class AlternativePresentationButtonElement;
-class Element;
-class HTMLInputElement;
-class StyledElement;
-
-class AlternativePresentationButtonSubstitution {
-public:
-    AlternativePresentationButtonSubstitution(HTMLInputElement&, Vector<Ref<Element>>&& elementsToHide);
-    AlternativePresentationButtonSubstitution(Element&, Vector<Ref<Element>>&& elementsToHide);
-
-    void apply();
-    void unapply();
-
-    Vector<Ref<Element>> replacedElements();
-
-private:
-    void initializeSavedDisplayStyles(Vector<Ref<Element>>&&);
-
-    Ref<Element> m_shadowHost;
-    AtomicString m_savedShadowHostInputType;
-    RefPtr<AlternativePresentationButtonElement> m_alternativePresentationButtonElement;
-
-    struct InlineDisplayStyle {
-        Ref<StyledElement> element;
-        String value { };
-        bool important { false };
-        bool wasSpecified { false };
-    };
-    Vector<InlineDisplayStyle> m_savedDisplayStyles;
-
-    bool m_isApplied { false };
-};
-
-} // namespace WebCore
-
-#endif
index 900c3ba..4b673cc 100644 (file)
 #include "TouchEvent.h"
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-#include "AlternativePresentationButtonInputType.h"
-#include "InputTypeNames.h"
-#endif
-
 namespace WebCore {
 
 using namespace HTMLNames;
@@ -238,13 +233,6 @@ HTMLElement* HTMLInputElement::placeholderElement() const
     return m_inputType->placeholderElement();
 }
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-HTMLElement* HTMLInputElement::alternativePresentationButtonElement() const
-{
-    return m_inputType->alternativePresentationButtonElement();
-}
-#endif
-
 bool HTMLInputElement::shouldAutocomplete() const
 {
     if (m_autocomplete != Uninitialized)
@@ -494,28 +482,12 @@ void HTMLInputElement::setType(const AtomicString& type)
     setAttributeWithoutSynchronization(typeAttr, type);
 }
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-void HTMLInputElement::setTypeWithoutUpdatingAttribute(const AtomicString& type)
-{
-    updateType(type);
-}
-#endif
-
-inline std::unique_ptr<InputType> HTMLInputElement::createInputType(const AtomicString& type)
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    if (type == InputTypeNames::alternativePresentationButton())
-        return std::make_unique<AlternativePresentationButtonInputType>(*this);
-#endif
-    return InputType::create(*this, type);
-}
-
-void HTMLInputElement::updateType(const AtomicString& newType)
+void HTMLInputElement::updateType()
 {
     ASSERT(m_inputType);
-    auto newInputType = createInputType(newType);
+    auto newType = InputType::create(*this, attributeWithoutSynchronization(typeAttr));
     m_hasType = true;
-    if (m_inputType->formControlType() == newInputType->formControlType())
+    if (m_inputType->formControlType() == newType->formControlType())
         return;
 
     removeFromRadioButtonGroup();
@@ -525,9 +497,9 @@ void HTMLInputElement::updateType(const AtomicString& newType)
     bool didRespectHeightAndWidth = m_inputType->shouldRespectHeightAndWidthAttributes();
     bool wasSuccessfulSubmitButtonCandidate = m_inputType->canBeSuccessfulSubmitButton();
 
-    std::unique_ptr<InputType> oldInputType = WTFMove(m_inputType);
-    m_inputType = WTFMove(newInputType);
-    oldInputType->destroyShadowSubtree();
+    m_inputType->destroyShadowSubtree();
+
+    m_inputType = WTFMove(newType);
     m_inputType->createShadowSubtree();
     updateInnerTextElementEditability();
 
@@ -721,7 +693,7 @@ void HTMLInputElement::parseAttribute(const QualifiedName& name, const AtomicStr
                 unregisterForSuspensionCallbackIfNeeded();
         }
     } else if (name == typeAttr)
-        updateType(value);
+        updateType();
     else if (name == valueAttr) {
         // Changes to the value attribute may change whether or not this element has a default value.
         // If this field is autocomplete=off that might affect the return value of needsSuspensionCallback.
@@ -841,7 +813,7 @@ RenderPtr<RenderElement> HTMLInputElement::createElementRenderer(RenderStyle&& s
 void HTMLInputElement::willAttachRenderers()
 {
     if (!m_hasType)
-        updateType(attributeWithoutSynchronization(typeAttr));
+        updateType();
 }
 
 void HTMLInputElement::didAttachRenderers()
index 6cb6f0b..e57f06f 100644 (file)
@@ -147,10 +147,6 @@ public:
     HTMLElement* placeholderElement() const final;
     WEBCORE_EXPORT HTMLElement* autoFillButtonElement() const;
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    WEBCORE_EXPORT HTMLElement* alternativePresentationButtonElement() const;
-#endif
-
     bool checked() const { return m_isChecked; }
     WEBCORE_EXPORT void setChecked(bool, TextFieldEventBehavior = DispatchNoEvent);
 
@@ -168,10 +164,6 @@ public:
 
     WEBCORE_EXPORT void setType(const AtomicString&);
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    void setTypeWithoutUpdatingAttribute(const AtomicString&);
-#endif
-
     WEBCORE_EXPORT String value() const final;
     WEBCORE_EXPORT ExceptionOr<void> setValue(const String&, TextFieldEventBehavior = DispatchNoEvent);
     WEBCORE_EXPORT void setValueForUser(const String&);
@@ -436,8 +428,7 @@ private:
     void requiredAttributeChanged() final;
 
     void initializeInputType();
-    std::unique_ptr<InputType> createInputType(const AtomicString&);
-    void updateType(const AtomicString&);
+    void updateType();
     void runPostTypeUpdateTasks();
     
     void subtreeHasChanged() final;
index b685043..87d0134 100644 (file)
@@ -226,10 +226,6 @@ public:
     virtual HTMLElement* sliderTrackElement() const { return nullptr; }
     virtual HTMLElement* placeholderElement() const;
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    virtual HTMLElement* alternativePresentationButtonElement() const { return nullptr; }
-#endif
-
     // Miscellaneous functions.
 
     virtual bool rendererIsNeeded();
index 07a7d1d..4387618 100644 (file)
@@ -169,14 +169,6 @@ const AtomicString& week()
     return name;
 }
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-const AtomicString& alternativePresentationButton()
-{
-    static NeverDestroyed<AtomicString> name("alternative-presentation-button", AtomicString::ConstructFromLiteral);
-    return name;
-}
-#endif
-
 } // namespace WebCore::InputTypeNames
 
 } // namespace WebCore
index 7f05092..4700306 100644 (file)
@@ -50,10 +50,6 @@ const AtomicString& time();
 const AtomicString& url();
 const AtomicString& week();
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-const AtomicString& alternativePresentationButton();
-#endif
-
 }
 
 } // namespace WebCore
diff --git a/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.cpp b/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.cpp
deleted file mode 100644 (file)
index af06b6d..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "AlternativePresentationButtonElement.h"
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include "Chrome.h"
-#include "ChromeClient.h"
-#include "DocumentFragment.h"
-#include "Editor.h"
-#include "EventNames.h"
-#include "Frame.h"
-#include "HTMLInputElement.h"
-#include "HTMLSpanElement.h"
-#include "HTMLStyleElement.h"
-#include "LocalizedStrings.h"
-#include "MouseEvent.h"
-#include "Text.h"
-#include "UserAgentStyleSheets.h"
-#include <wtf/NeverDestroyed.h>
-#include <wtf/Ref.h>
-
-namespace WebCore {
-
-Ref<AlternativePresentationButtonElement> AlternativePresentationButtonElement::create(Document& document)
-{
-    return adoptRef(*new AlternativePresentationButtonElement { document });
-}
-
-AlternativePresentationButtonElement::AlternativePresentationButtonElement(Document& document)
-    : HTMLDivElement { HTMLNames::divTag, document }
-{
-    setPseudo(AtomicString { "-webkit-alternative-presentation-button", AtomicString::ConstructFromLiteral });
-    setAttributeWithoutSynchronization(HTMLNames::aria_labelAttr, AXAlternativePresentationButtonLabel());
-    setAttributeWithoutSynchronization(HTMLNames::roleAttr, AtomicString { "button", AtomicString::ConstructFromLiteral });
-}
-
-auto AlternativePresentationButtonElement::insertedIntoAncestor(InsertionType type, ContainerNode& parentOfInsertedTree) -> InsertedIntoAncestorResult
-{
-    HTMLElement::insertedIntoAncestor(type, parentOfInsertedTree);
-    if (type.connectedToDocument) {
-        if (auto* frame = document().frame())
-            frame->editor().didInsertAlternativePresentationButtonElement(*this);
-        return InsertedIntoAncestorResult::NeedsPostInsertionCallback;
-    }
-    return InsertedIntoAncestorResult::Done;
-}
-
-void AlternativePresentationButtonElement::removedFromAncestor(RemovalType type, ContainerNode& ancestor)
-{
-    HTMLDivElement::removedFromAncestor(type, ancestor);
-    if (type.disconnectedFromDocument) {
-        if (auto* frame = document().frame())
-            frame->editor().didRemoveAlternativePresentationButtonElement(*this);
-    }
-}
-
-void AlternativePresentationButtonElement::didFinishInsertingNode()
-{
-    auto fragment = document().createDocumentFragment();
-
-#if __has_include(<WebKitAdditions/alternativePresentationButtonElementShadow.css>)
-    static NeverDestroyed<String> styleSheet { alternativePresentationButtonElementShadowUserAgentStyleSheet, String::ConstructFromLiteral };
-    auto style = HTMLStyleElement::create(document());
-    style->setTextContent(styleSheet);
-    fragment->appendChild(style);
-#endif
-
-    auto iconContainer = HTMLDivElement::create(document());
-    iconContainer->setPseudo(AtomicString { "-webkit-alternative-presentation-button-icon-container" , AtomicString::ConstructFromLiteral });
-    fragment->appendChild(iconContainer);
-
-    auto icon = HTMLDivElement::create(document());
-    icon->setPseudo(AtomicString { "-webkit-alternative-presentation-button-icon", AtomicString::ConstructFromLiteral });
-    icon->setAttributeWithoutSynchronization(HTMLNames::classAttr, AtomicString { "center-img", AtomicString::ConstructFromLiteral });
-    iconContainer->appendChild(icon);
-
-    auto textContainer = HTMLDivElement::create(document());
-    textContainer->setPseudo(AtomicString { "-webkit-alternative-presentation-button-text-container", AtomicString::ConstructFromLiteral });
-    textContainer->setAttributeWithoutSynchronization(HTMLNames::classAttr, AtomicString { "center", AtomicString::ConstructFromLiteral });
-    fragment->appendChild(textContainer);
-
-    auto text = HTMLSpanElement::create(document());
-    text->setPseudo(AtomicString { "-webkit-alternative-presentation-button-title", AtomicString::ConstructFromLiteral });
-    text->appendChild(document().createTextNode(alternativePresentationButtonTitle()));
-    textContainer->appendChild(text);
-
-    auto subtext = HTMLDivElement::create(document());
-    subtext->setPseudo(AtomicString { "-webkit-alternative-presentation-button-subtitle", AtomicString::ConstructFromLiteral });
-    subtext->appendChild(document().createTextNode(alternativePresentationButtonSubtitle()));
-    textContainer->appendChild(subtext);
-
-    appendChild(fragment);
-}
-
-void AlternativePresentationButtonElement::defaultEventHandler(Event& event)
-{
-    if (!is<MouseEvent>(event)) {
-        if (!event.defaultHandled())
-            HTMLDivElement::defaultEventHandler(event);
-        return;
-    }
-
-    MouseEvent& mouseEvent = downcast<MouseEvent>(event);
-
-    if (mouseEvent.type() == eventNames().clickEvent) {
-        document().page()->chrome().client().handleAlternativePresentationButtonClick(*this);
-        event.setDefaultHandled();
-    }
-
-    if (!event.defaultHandled())
-        HTMLDivElement::defaultEventHandler(event);
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
diff --git a/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.h b/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonElement.h
deleted file mode 100644 (file)
index de80d0a..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include "HTMLDivElement.h"
-#include <wtf/Forward.h>
-
-namespace WebCore {
-
-class HTMLInputElement;
-
-class AlternativePresentationButtonElement final : public HTMLDivElement {
-public:
-    static Ref<AlternativePresentationButtonElement> create(Document&);
-
-    void setUniqueIdentifier(const String& uniqueIdentifier) { m_uniqueIdentifier = uniqueIdentifier; }
-    const String& uniqueIdentifier() const { return m_uniqueIdentifier; }
-
-private:
-    explicit AlternativePresentationButtonElement(Document&);
-
-    // Node
-    InsertedIntoAncestorResult insertedIntoAncestor(InsertionType, ContainerNode&) final;
-    void removedFromAncestor(RemovalType, ContainerNode&) final;
-    void didFinishInsertingNode() final;
-    void defaultEventHandler(Event&) final;
-
-    String m_uniqueIdentifier;
-};
-
-} // namespace WebCore
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
diff --git a/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.cpp b/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.cpp
deleted file mode 100644 (file)
index fb14993..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "AlternativePresentationButtonInputType.h"
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include "AlternativePresentationButtonElement.h"
-#include "DOMFormData.h"
-#include "HTMLNames.h"
-#include "InputTypeNames.h"
-#include "ShadowRoot.h"
-
-namespace WebCore {
-
-AlternativePresentationButtonInputType::AlternativePresentationButtonInputType(HTMLInputElement& element)
-    : BaseButtonInputType { element }
-{
-}
-
-AlternativePresentationButtonInputType::~AlternativePresentationButtonInputType() = default;
-
-const AtomicString& AlternativePresentationButtonInputType::formControlType() const
-{
-    return InputTypeNames::alternativePresentationButton();
-}
-
-bool AlternativePresentationButtonInputType::appendFormData(DOMFormData& formData, bool multipart) const
-{
-    InputType::appendFormData(formData, multipart);
-    auto& dirnameAttrValue = element().attributeWithoutSynchronization(HTMLNames::dirnameAttr);
-    if (!dirnameAttrValue.isNull())
-        formData.append(dirnameAttrValue, element().directionForFormData());
-    return true;
-}
-
-bool AlternativePresentationButtonInputType::supportsValidation() const
-{
-    return false;
-}
-
-bool AlternativePresentationButtonInputType::isTextButton() const
-{
-    return true;
-}
-
-HTMLElement* AlternativePresentationButtonInputType::alternativePresentationButtonElement() const
-{
-    return m_alternativePresentationButtonElement.get();
-}
-
-void AlternativePresentationButtonInputType::createShadowSubtree()
-{
-    ASSERT(element().shadowRoot());
-    m_alternativePresentationButtonElement = AlternativePresentationButtonElement::create(element().document());
-    element().shadowRoot()->appendChild(*m_alternativePresentationButtonElement);
-}
-
-void AlternativePresentationButtonInputType::destroyShadowSubtree()
-{
-    BaseButtonInputType::destroyShadowSubtree();
-    m_alternativePresentationButtonElement = nullptr;
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
diff --git a/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.h b/Source/WebCore/html/shadow/cocoa/AlternativePresentationButtonInputType.h
deleted file mode 100644 (file)
index bee6875..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-
-#include "BaseButtonInputType.h"
-#include <wtf/Forward.h>
-
-namespace WebCore {
-
-class AlternativePresentationButtonElement;
-
-class AlternativePresentationButtonInputType final : public BaseButtonInputType {
-public:
-    explicit AlternativePresentationButtonInputType(HTMLInputElement&);
-    ~AlternativePresentationButtonInputType();
-
-private:
-    // InputType
-    const AtomicString& formControlType() const final;
-    HTMLElement* alternativePresentationButtonElement() const final;
-    bool supportsValidation() const final;
-    bool isTextButton() const final;
-    void createShadowSubtree() final;
-    void destroyShadowSubtree() final;
-    bool appendFormData(DOMFormData&, bool) const final;
-
-    RefPtr<AlternativePresentationButtonElement> m_alternativePresentationButtonElement;
-};
-
-} // namespace WebCore
-
-#endif // ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
index b415d28..1dfc1f9 100644 (file)
@@ -445,8 +445,6 @@ public:
 
     virtual void handleAutoFillButtonClick(HTMLInputElement&) { }
 
-    virtual void handleAlternativePresentationButtonClick(Node&) { }
-
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
     virtual void addPlaybackTargetPickerClient(uint64_t /*contextId*/) { }
     virtual void removePlaybackTargetPickerClient(uint64_t /*contextId*/) { }
index f82e68b..f86bd5b 100644 (file)
@@ -625,21 +625,6 @@ String AXAutoFillContactsLabel()
     return WEB_UI_STRING("contact info auto fill", "Label for the auto fill contacts button inside a text field.");
 }
 
-String AXAlternativePresentationButtonLabel()
-{
-    return WEB_UI_STRING("alternative presentation button", "Label for the alternative presentation button.");
-}
-
-String alternativePresentationButtonTitle()
-{
-    return WEB_UI_STRING("alternative presentation button title", "Title text for alternative presentation button");
-}
-
-String alternativePresentationButtonSubtitle()
-{
-    return WEB_UI_STRING("alternative presentation button subtitle", "Subtitle text for alternative presentation button");
-}
-
 String AXAutoFillStrongPasswordLabel()
 {
     return WEB_UI_STRING("strong password auto fill", "Label for the strong password auto fill button inside a text field.");
index 99a3dc0..5569fe2 100644 (file)
@@ -315,12 +315,6 @@ namespace WebCore {
     WEBCORE_EXPORT String exitFullScreenButtonAccessibilityTitle();
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    String AXAlternativePresentationButtonLabel();
-    String alternativePresentationButtonTitle();
-    String alternativePresentationButtonSubtitle();
-#endif
-
 #if USE(GLIB) && defined(GETTEXT_PACKAGE)
 #define WEB_UI_STRING(string, description) WebCore::localizedString(_(string))
 #define WEB_UI_STRING_KEY(string, key, description) WebCore::localizedString(C_(key, string))
index 177438a..f68513c 100644 (file)
@@ -4342,37 +4342,4 @@ MockPaymentCoordinator& Internals::mockPaymentCoordinator() const
 }
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-ExceptionOr<void> Internals::substituteWithAlternativePresentationButton(Vector<RefPtr<Element>>&& elementsFromBindings, const String& identifier)
-{
-    if (!frame())
-        return Exception { InvalidAccessError };
-    if (elementsFromBindings.isEmpty())
-        return Exception { TypeError, ASCIILiteral { "Must specify at least one element to substitute." } };
-    Vector<Ref<Element>> elements;
-    elements.reserveInitialCapacity(elementsFromBindings.size());
-    for (auto& element : elementsFromBindings) {
-        if (element)
-            elements.uncheckedAppend(element.releaseNonNull());
-    }
-    frame()->editor().substituteWithAlternativePresentationButton(WTFMove(elements), identifier);
-    return { };
-}
-
-ExceptionOr<void> Internals::removeAlternativePresentationButton(const String& identifier)
-{
-    if (!frame())
-        return Exception { InvalidAccessError };
-    frame()->editor().removeAlternativePresentationButton(identifier);
-    return { };
-}
-
-ExceptionOr<Vector<Ref<Element>>> Internals::elementsReplacedByAlternativePresentationButton(const String& identifier)
-{
-    if (!frame())
-        return Exception { InvalidAccessError };
-    return frame()->editor().elementsReplacedByAlternativePresentationButton(identifier);
-}
-#endif
-
 } // namespace WebCore
index 4778da2..f34eaca 100644 (file)
@@ -636,12 +636,6 @@ public:
     MockPaymentCoordinator& mockPaymentCoordinator() const;
 #endif
 
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    ExceptionOr<void> substituteWithAlternativePresentationButton(Vector<RefPtr<Element>>&&, const String&);
-    ExceptionOr<void> removeAlternativePresentationButton(const String&);
-    ExceptionOr<Vector<Ref<Element>>> elementsReplacedByAlternativePresentationButton(const String&);
-#endif
-
     String timelineDescription(AnimationTimeline&);
     void pauseTimeline(AnimationTimeline&);
     void setTimelineCurrentTime(AnimationTimeline&, double);
index ac96c2f..4160703 100644 (file)
@@ -576,8 +576,4 @@ enum EventThrottlingBehavior {
     [EnabledAtRuntime=WebAnimations] void pauseTimeline(AnimationTimeline timeline);
     [EnabledAtRuntime=WebAnimations] void setTimelineCurrentTime(AnimationTimeline timeline, double currentTime);
     [Conditional=APPLE_PAY] readonly attribute MockPaymentCoordinator mockPaymentCoordinator;
-
-    [Conditional=ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT, MayThrowException] void substituteWithAlternativePresentationButton(sequence<Element> elements, DOMString identifier);
-    [Conditional=ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT, MayThrowException] void removeAlternativePresentationButton(DOMString identifier);
-    [Conditional=ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT, MayThrowException] sequence<Element> elementsReplacedByAlternativePresentationButton(DOMString identifier);
 };
index a04ccf4..a36c453 100644 (file)
@@ -1,3 +1,50 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * UIProcess/API/APIUIClient.h:
+        (API::UIClient::didClickAlternativePresentationButton): Deleted.
+        * UIProcess/API/C/WKPageUIClient.h:
+        * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
+        * UIProcess/Cocoa/UIDelegate.h:
+        * UIProcess/Cocoa/UIDelegate.mm:
+        (WebKit::UIDelegate::setDelegate):
+        (WebKit::UIDelegate::UIClient::didClickAlternativePresentationButton): Deleted.
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::handleAutoFillButtonClick):
+        (WebKit::WebPageProxy::handleAlternativePresentationButtonClick): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
+        (API::InjectedBundle::PageUIClient::didClickAutoFillButton):
+        (API::InjectedBundle::PageUIClient::didClickAlternativePresentationButton): Deleted.
+        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h:
+        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
+        (-[WKWebProcessPlugInFrame substituteElements:withAlternativePresentationButtonWithIdentifier:]): Deleted.
+        (-[WKWebProcessPlugInFrame removeAlternativePresentationButton:]): Deleted.
+        (-[WKWebProcessPlugInFrame elementsReplacedByAlternativePresentationButtonWithIdentifier:]): Deleted.
+        * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
+        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
+        (WKBundleFrameFocus):
+        (WKBundleSubstituteWithAlternativePresentationButton): Deleted.
+        (WKBundleRemoveAlternativePresentationButton): Deleted.
+        (WKBundleElementsReplacedByAlternativePresentationButton): Deleted.
+        * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
+        * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
+        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
+        (WebKit::InjectedBundlePageUIClient::didClickAlternativePresentationButton): Deleted.
+        * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
+        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+        (WebKit::WebChromeClient::handleAlternativePresentationButtonClick): Deleted.
+        * WebProcess/WebCoreSupport/WebChromeClient.h:
+
 2017-12-20  Andy Estes  <aestes@apple.com>
 
         [Apple Pay] Tell PassKit whether Apple Pay JS or Payment Request was used to start an Apple Pay session
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index e783693..bebe57b 100644 (file)
@@ -169,8 +169,6 @@ public:
 
     virtual void didClickAutoFillButton(WebKit::WebPageProxy&, Object*) { }
 
-    virtual void didClickAlternativePresentationButton(WebKit::WebPageProxy&, Object*) { }
-
     virtual void imageOrMediaDocumentSizeChanged(const WebCore::IntSize&) { }
 
     virtual void didExceedBackgroundResourceLimitWhileInForeground(WebKit::WebPageProxy&, WKResourceLimit) { }
index 4bbd4ad..ce4e28f 100644 (file)
@@ -120,7 +120,6 @@ typedef void (*WKPageIsPlayingAudioDidChangeCallback)(WKPageRef page, const void
 typedef void (*WKPageDecidePolicyForUserMediaPermissionRequestCallback)(WKPageRef page, WKFrameRef frame, WKSecurityOriginRef userMediaDocumentOrigin, WKSecurityOriginRef topLevelDocumentOrigin, WKUserMediaPermissionRequestRef permissionRequest, const void* clientInfo);
 typedef void (*WKCheckUserMediaPermissionCallback)(WKPageRef page, WKFrameRef frame, WKSecurityOriginRef userMediaDocumentOrigin, WKSecurityOriginRef topLevelDocumentOrigin, WKUserMediaPermissionCheckRef devicesRequest, const void *clientInfo);
 typedef void (*WKPageDidClickAutoFillButtonCallback)(WKPageRef page, WKTypeRef userData, const void *clientInfo);
-typedef void (*WKPageDidClickAlternativePresentationButtonCallback)(WKPageRef page, WKTypeRef userData, const void *clientInfo);
 typedef void (*WKPageMediaSessionMetadataDidChangeCallback)(WKPageRef page, WKMediaSessionMetadataRef metadata, const void* clientInfo);
 typedef void (*WKHandleAutoplayEventCallback)(WKPageRef page, WKAutoplayEvent event, WKAutoplayEventFlags flags, const void* clientInfo);
 typedef void (*WKFullscreenMayReturnToInlineCallback)(WKPageRef page, const void* clientInfo);
@@ -935,104 +934,6 @@ typedef struct WKPageUIClientV10 {
     WKDidExceedBackgroundResourceLimitWhileInForegroundCallback         didExceedBackgroundResourceLimitWhileInForeground;
 } WKPageUIClientV10;
 
-typedef struct WKPageUIClientV11 {
-    WKPageUIClientBase                                                  base;
-
-    // Version 0.
-    WKPageCreateNewPageCallback_deprecatedForUseWithV0                  createNewPage_deprecatedForUseWithV0;
-    WKPageUIClientCallback                                              showPage;
-    WKPageUIClientCallback                                              close;
-    WKPageTakeFocusCallback                                             takeFocus;
-    WKPageFocusCallback                                                 focus;
-    WKPageUnfocusCallback                                               unfocus;
-    WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV0             runJavaScriptAlert_deprecatedForUseWithV0;
-    WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV0           runJavaScriptConfirm_deprecatedForUseWithV0;
-    WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV0            runJavaScriptPrompt_deprecatedForUseWithV0;
-    WKPageSetStatusTextCallback                                         setStatusText;
-    WKPageMouseDidMoveOverElementCallback_deprecatedForUseWithV0        mouseDidMoveOverElement_deprecatedForUseWithV0;
-    WKPageMissingPluginButtonClickedCallback_deprecatedForUseWithV0     missingPluginButtonClicked_deprecatedForUseWithV0;
-    WKPageDidNotHandleKeyEventCallback                                  didNotHandleKeyEvent;
-    WKPageDidNotHandleWheelEventCallback                                didNotHandleWheelEvent;
-    WKPageGetToolbarsAreVisibleCallback                                 toolbarsAreVisible;
-    WKPageSetToolbarsAreVisibleCallback                                 setToolbarsAreVisible;
-    WKPageGetMenuBarIsVisibleCallback                                   menuBarIsVisible;
-    WKPageSetMenuBarIsVisibleCallback                                   setMenuBarIsVisible;
-    WKPageGetStatusBarIsVisibleCallback                                 statusBarIsVisible;
-    WKPageSetStatusBarIsVisibleCallback                                 setStatusBarIsVisible;
-    WKPageGetIsResizableCallback                                        isResizable;
-    WKPageSetIsResizableCallback                                        setIsResizable;
-    WKPageGetWindowFrameCallback                                        getWindowFrame;
-    WKPageSetWindowFrameCallback                                        setWindowFrame;
-    WKPageRunBeforeUnloadConfirmPanelCallback_deprecatedForUseWithV6    runBeforeUnloadConfirmPanel_deprecatedForUseWithV6;
-    WKPageUIClientCallback                                              didDraw;
-    WKPageUIClientCallback                                              pageDidScroll;
-    WKPageExceededDatabaseQuotaCallback                                 exceededDatabaseQuota;
-    WKPageRunOpenPanelCallback                                          runOpenPanel;
-    WKPageDecidePolicyForGeolocationPermissionRequestCallback           decidePolicyForGeolocationPermissionRequest;
-    WKPageHeaderHeightCallback                                          headerHeight;
-    WKPageFooterHeightCallback                                          footerHeight;
-    WKPageDrawHeaderCallback                                            drawHeader;
-    WKPageDrawFooterCallback                                            drawFooter;
-    WKPagePrintFrameCallback                                            printFrame;
-    WKPageUIClientCallback                                              runModal;
-    void*                                                               unused1; // Used to be didCompleteRubberBandForMainFrame
-    WKPageSaveDataToFileInDownloadsFolderCallback                       saveDataToFileInDownloadsFolder;
-    void*                                                               shouldInterruptJavaScript_unavailable;
-
-    // Version 1.
-    WKPageCreateNewPageCallback_deprecatedForUseWithV1                  createNewPage_deprecatedForUseWithV1;
-    WKPageMouseDidMoveOverElementCallback                               mouseDidMoveOverElement;
-    WKPageDecidePolicyForNotificationPermissionRequestCallback          decidePolicyForNotificationPermissionRequest;
-    WKPageUnavailablePluginButtonClickedCallback_deprecatedForUseWithV1 unavailablePluginButtonClicked_deprecatedForUseWithV1;
-
-    // Version 2.
-    WKPageShowColorPickerCallback                                       showColorPicker;
-    WKPageHideColorPickerCallback                                       hideColorPicker;
-    WKPageUnavailablePluginButtonClickedCallback                        unavailablePluginButtonClicked;
-
-    // Version 3.
-    WKPagePinnedStateDidChangeCallback                                  pinnedStateDidChange;
-
-    // Version 4.
-    void*                                                               unused2; // Used to be didBeginTrackingPotentialLongMousePress.
-    void*                                                               unused3; // Used to be didRecognizeLongMousePress.
-    void*                                                               unused4; // Used to be didCancelTrackingPotentialLongMousePress.
-    WKPageIsPlayingAudioDidChangeCallback                               isPlayingAudioDidChange;
-
-    // Version 5.
-    WKPageDecidePolicyForUserMediaPermissionRequestCallback             decidePolicyForUserMediaPermissionRequest;
-    WKPageDidClickAutoFillButtonCallback                                didClickAutoFillButton;
-    WKPageRunJavaScriptAlertCallback_deprecatedForUseWithV5             runJavaScriptAlert_deprecatedForUseWithV5;
-    WKPageRunJavaScriptConfirmCallback_deprecatedForUseWithV5           runJavaScriptConfirm_deprecatedForUseWithV5;
-    WKPageRunJavaScriptPromptCallback_deprecatedForUseWithV5            runJavaScriptPrompt_deprecatedForUseWithV5;
-    WKPageMediaSessionMetadataDidChangeCallback                         mediaSessionMetadataDidChange;
-
-    // Version 6.
-    WKPageCreateNewPageCallback                                         createNewPage;
-    WKPageRunJavaScriptAlertCallback                                    runJavaScriptAlert;
-    WKPageRunJavaScriptConfirmCallback                                  runJavaScriptConfirm;
-    WKPageRunJavaScriptPromptCallback                                   runJavaScriptPrompt;
-    WKCheckUserMediaPermissionCallback                                  checkUserMediaPermissionForOrigin;
-
-    // Version 7.
-    WKPageRunBeforeUnloadConfirmPanelCallback                           runBeforeUnloadConfirmPanel;
-    WKFullscreenMayReturnToInlineCallback                               fullscreenMayReturnToInline;
-
-    // Version 8.
-    WKRequestPointerLockCallback                                        requestPointerLock;
-    WKDidLosePointerLockCallback                                        didLosePointerLock;
-
-    // Version 9.
-    WKHandleAutoplayEventCallback                                       handleAutoplayEvent;
-
-    // Version 10.
-    WKHasVideoInPictureInPictureDidChangeCallback                       hasVideoInPictureInPictureDidChange;
-    WKDidExceedBackgroundResourceLimitWhileInForegroundCallback         didExceedBackgroundResourceLimitWhileInForeground;
-
-    // Version 11.
-    WKPageDidClickAlternativePresentationButtonCallback                 didClickAlternativePresentationButton;
-} WKPageUIClientV11;
-
 #ifdef __cplusplus
 }
 #endif
index ac9c527..3b2e8cb 100644 (file)
@@ -113,8 +113,6 @@ struct UIEdgeInsets;
 - (void)_webView:(WKWebView *)webView didRemoveAttachment:(_WKAttachment *)attachment WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
 - (void)_webView:(WKWebView *)webView didInsertAttachment:(_WKAttachment *)attachment WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
 
-- (void)_webView:(WKWebView *)webView didClickAlternativePresentationButtonWithUserInfo:(id <NSSecureCoding>)userInfo WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
-
 #if TARGET_OS_IPHONE
 - (BOOL)_webView:(WKWebView *)webView shouldIncludeAppLinkActionsForElement:(_WKActivatedElementInfo *)element WK_API_AVAILABLE(ios(9.0));
 - (NSArray *)_webView:(WKWebView *)webView actionsForElement:(_WKActivatedElementInfo *)element defaultActions:(NSArray<_WKElementAction *> *)defaultActions;
index 26732ba..5fbca66 100644 (file)
@@ -93,7 +93,6 @@ private:
         void runBeforeUnloadConfirmPanel(WebPageProxy*, const WTF::String&, WebFrameProxy*, const WebCore::SecurityOriginData&, Function<void(bool)>&& completionHandler) final;
         void exceededDatabaseQuota(WebPageProxy*, WebFrameProxy*, API::SecurityOrigin*, const WTF::String& databaseName, const WTF::String& displayName, unsigned long long currentQuota, unsigned long long currentOriginUsage, unsigned long long currentUsage, unsigned long long expectedUsage, Function<void(unsigned long long)>&& completionHandler) final;
         void reachedApplicationCacheOriginQuota(WebPageProxy*, const WebCore::SecurityOrigin&, uint64_t currentQuota, uint64_t totalBytesNeeded, Function<void(unsigned long long)>&& completionHandler) final;
-        void didClickAlternativePresentationButton(WebPageProxy&, API::Object*) final;
 #if PLATFORM(MAC)
         void showPage(WebPageProxy*) final;
         void takeFocus(WebPageProxy*, WKFocusDirection) final;
@@ -158,7 +157,6 @@ private:
         bool webViewRunJavaScriptTextInputPanelWithPromptDefaultTextInitiatedByFrameCompletionHandler : 1;
         bool webViewRunBeforeUnloadConfirmPanelWithMessageInitiatedByFrameCompletionHandler : 1;
         bool webViewRequestGeolocationPermissionForFrameDecisionHandler : 1;
-        bool webViewDidClickAlternativePresentationButtonWithUserInfo : 1;
 #if PLATFORM(MAC)
         bool showWebView : 1;
         bool focusWebView : 1;
index 97b3d4a..a285190 100644 (file)
@@ -104,7 +104,6 @@ void UIDelegate::setDelegate(id <WKUIDelegate> delegate)
     m_delegateMethods.webViewRunJavaScriptTextInputPanelWithPromptDefaultTextInitiatedByFrameCompletionHandler = [delegate respondsToSelector:@selector(webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:completionHandler:)];
     m_delegateMethods.webViewRunBeforeUnloadConfirmPanelWithMessageInitiatedByFrameCompletionHandler = [delegate respondsToSelector:@selector(_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:)];
     m_delegateMethods.webViewRequestGeolocationPermissionForFrameDecisionHandler = [delegate respondsToSelector:@selector(_webView:requestGeolocationPermissionForFrame:decisionHandler:)];
-    m_delegateMethods.webViewDidClickAlternativePresentationButtonWithUserInfo = [delegate respondsToSelector:@selector(_webView:didClickAlternativePresentationButtonWithUserInfo:)];
 
 #if PLATFORM(MAC)
     m_delegateMethods.showWebView = [delegate respondsToSelector:@selector(_showWebView:)];
@@ -386,18 +385,6 @@ void UIDelegate::UIClient::exceededDatabaseQuota(WebPageProxy*, WebFrameProxy*,
     }).get()];
 }
 
-void UIDelegate::UIClient::didClickAlternativePresentationButton(WebPageProxy&, API::Object* userInfo)
-{
-    if (!m_uiDelegate.m_delegateMethods.webViewDidClickAlternativePresentationButtonWithUserInfo)
-        return;
-
-    auto delegate = m_uiDelegate.m_delegate.get();
-    if (!delegate)
-        return;
-
-    [(id <WKUIDelegatePrivate>)delegate _webView:m_uiDelegate.m_webView didClickAlternativePresentationButtonWithUserInfo:userInfo ? static_cast<id <NSSecureCoding>>(userInfo->wrapper()) : nil];
-}
-
 #if PLATFORM(MAC)
 static inline _WKFocusDirection toWKFocusDirection(WKFocusDirection direction)
 {
index 4bbe8db..279480a 100644 (file)
@@ -6928,11 +6928,6 @@ void WebPageProxy::handleAutoFillButtonClick(const UserData& userData)
     m_uiClient->didClickAutoFillButton(*this, m_process->transformHandlesToObjects(userData.object()).get());
 }
 
-void WebPageProxy::handleAlternativePresentationButtonClick(const UserData& userData)
-{
-    m_uiClient->didClickAlternativePresentationButton(*this, m_process->transformHandlesToObjects(userData.object()).get());
-}
-
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
 void WebPageProxy::addPlaybackTargetPickerClient(uint64_t contextId)
 {
index e0061dc..4bbe8db 100644 (file)
 #include <WebCore/JSDOMExceptionHandling.h>
 #include <WebCore/LengthBox.h>
 #include <WebCore/MIMETypeRegistry.h>
+#include <WebCore/MediaStreamRequest.h>
 #include <WebCore/PerformanceLoggingClient.h>
 #include <WebCore/PublicSuffix.h>
 #include <WebCore/RenderEmbeddedObject.h>
 #include "PlaybackSessionManagerProxy.h"
 #endif
 
-#if ENABLE(MEDIA_STREAM)
-#include <WebCore/MediaConstraints.h>
-#endif
-
 // This controls what strategy we use for mouse wheel coalescing.
 #define MERGE_WHEEL_EVENTS 1
 
@@ -5990,19 +5987,18 @@ UserMediaPermissionRequestManagerProxy& WebPageProxy::userMediaPermissionRequest
 }
 #endif
 
-    void WebPageProxy::requestUserMediaPermissionForFrame(uint64_t userMediaID, uint64_t frameID, const WebCore::SecurityOriginData&  userMediaDocumentOriginData, const WebCore::SecurityOriginData& topLevelDocumentOriginData, const WebCore::MediaConstraints& audioConstraints, const WebCore::MediaConstraints& videoConstraints)
+void WebPageProxy::requestUserMediaPermissionForFrame(uint64_t userMediaID, uint64_t frameID, const WebCore::SecurityOriginData&  userMediaDocumentOriginData, const WebCore::SecurityOriginData& topLevelDocumentOriginData, const WebCore::MediaStreamRequest& request)
 {
 #if ENABLE(MEDIA_STREAM)
     MESSAGE_CHECK(m_process->webFrame(frameID));
 
-    userMediaPermissionRequestManager().requestUserMediaPermissionForFrame(userMediaID, frameID, userMediaDocumentOriginData.securityOrigin(), topLevelDocumentOriginData.securityOrigin(), audioConstraints, videoConstraints);
+    userMediaPermissionRequestManager().requestUserMediaPermissionForFrame(userMediaID, frameID, userMediaDocumentOriginData.securityOrigin(), topLevelDocumentOriginData.securityOrigin(), request);
 #else
     UNUSED_PARAM(userMediaID);
     UNUSED_PARAM(frameID);
     UNUSED_PARAM(userMediaDocumentOriginData);
     UNUSED_PARAM(topLevelDocumentOriginData);
-    UNUSED_PARAM(audioConstraints);
-    UNUSED_PARAM(videoConstraints);
+    UNUSED_PARAM(request);
 #endif
 }
 
index df53beb..8014906 100644 (file)
@@ -1677,8 +1677,6 @@ private:
 
     void handleAutoFillButtonClick(const UserData&);
 
-    void handleAlternativePresentationButtonClick(const UserData&);
-
     void finishInitializingWebPageAfterProcessLaunch();
 
     void handleMessage(IPC::Connection&, const String& messageName, const UserData& messageBody);
index c821d3d..cfde698 100644 (file)
@@ -466,9 +466,6 @@ messages -> WebPageProxy {
     HandleSynchronousMessage(String messageName, WebKit::UserData messageBody) -> (WebKit::UserData returnData) WantsConnection
 
     HandleAutoFillButtonClick(WebKit::UserData userData);
-
-    HandleAlternativePresentationButtonClick(WebKit::UserData userData)
-
     ContentRuleListNotification(WebCore::URL url, Vector<String> identifiers, Vector<String> notifications)
 
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
index 3168355..edd89b9 100644 (file)
@@ -88,8 +88,6 @@ public:
     virtual WTF::String plugInExtraScript() const { return emptyString(); }
 
     virtual void didClickAutoFillButton(WebKit::WebPage&, WebKit::InjectedBundleNodeHandle&, RefPtr<API::Object>&) { }
-
-    virtual void didClickAlternativePresentationButton(WebKit::WebPage&, WebKit::InjectedBundleNodeHandle&, RefPtr<API::Object>&) { }
 };
 
 } // namespace InjectedBundle
index c056eb6..715e291 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2013-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
index b9dff59..543f68c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2013-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
 #import "_WKFrameHandleInternal.h"
 #import <JavaScriptCore/JSValue.h>
 #import <WebCore/CertificateInfo.h>
-#import <WebCore/Editor.h>
-#import <WebCore/Element.h>
 #import <WebCore/Frame.h>
 #import <WebCore/IntPoint.h>
 #import <WebCore/LinkIconCollector.h>
 #import <WebCore/LinkIconType.h>
-#import <wtf/Vector.h>
 
 using namespace WebKit;
 
@@ -91,46 +88,6 @@ using namespace WebKit;
     return [JSValue valueWithJSValueRef:valueRef inContext:[self jsContextForWorld:world]];
 }
 
-- (void)substituteElements:(NSArray<WKWebProcessPlugInNodeHandle *> *)elements withAlternativePresentationButtonWithIdentifier:(NSString *)identifier
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    size_t size = static_cast<size_t>(elements.count);
-    Vector<Ref<WebCore::Element>> coreElements;
-    coreElements.reserveInitialCapacity(size);
-    for (size_t i = 0; i < size; ++i) {
-        auto* plugInNodeHandle = [elements objectAtIndex:static_cast<NSUInteger>(i)];
-        if (!plugInNodeHandle)
-            continue;
-        auto& coreNode = *plugInNodeHandle._nodeHandle.coreNode();
-        if (is<WebCore::Element>(coreNode))
-            coreElements.uncheckedAppend(downcast<WebCore::Element>(coreNode));
-    }
-    _frame->coreFrame()->editor().substituteWithAlternativePresentationButton(WTFMove(coreElements), identifier);
-#endif
-}
-
-- (void)removeAlternativePresentationButton:(NSString *)identifier
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    _frame->coreFrame()->editor().removeAlternativePresentationButton(identifier);
-#endif
-}
-
-- (NSArray<WKWebProcessPlugInNodeHandle *> *)elementsReplacedByAlternativePresentationButtonWithIdentifier:(NSString *)identifier
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    auto replacedElements = _frame->coreFrame()->editor().elementsReplacedByAlternativePresentationButton(identifier);
-    if (replacedElements.isEmpty())
-        return nil;
-    auto nodeHandles = adoptNS([NSMutableArray arrayWithCapacity:replacedElements.size()]);
-    for (auto& element : replacedElements)
-        [nodeHandles addObject:wrapper(InjectedBundleNodeHandle::getOrCreate(element).get())];
-    return nodeHandles.autorelease();
-#else
-    return nil;
-#endif
-}
-
 - (WKWebProcessPlugInBrowserContextController *)_browserContextController
 {
     return wrapper(*_frame->page());
index 567d54d..8310ac5 100644 (file)
 
 @property (nonatomic, readonly) WKWebProcessPlugInFrame *_parentFrame;
 
-- (void)substituteElements:(NSArray<WKWebProcessPlugInNodeHandle *> *)elements withAlternativePresentationButtonWithIdentifier:(NSString *)identifier;
-- (void)removeAlternativePresentationButton:(NSString *)identifier;
-- (NSArray<WKWebProcessPlugInNodeHandle *> *)elementsReplacedByAlternativePresentationButtonWithIdentifier:(NSString *)identifier;
-
 @end
 
 #endif // WK_API_ENABLED
index 506e420..4c0c6ae 100644 (file)
@@ -40,7 +40,6 @@
 #include "WebFrame.h"
 #include "WebPage.h"
 #include <WebCore/Document.h>
-#include <WebCore/Editor.h>
 #include <WebCore/FocusController.h>
 #include <WebCore/Frame.h>
 #include <WebCore/FrameLoader.h>
@@ -297,57 +296,3 @@ void WKBundleFrameFocus(WKBundleFrameRef frameRef)
 
     coreFrame->page()->focusController().setFocusedFrame(coreFrame);
 }
-
-void WKBundleSubstituteWithAlternativePresentationButton(WKBundleFrameRef frame, WKArrayRef elements, WKStringRef identifier)
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    auto* coreFrame = toImpl(frame)->coreFrame();
-    if (!coreFrame)
-        return;
-    API::Array* apiAssociatedElements = toImpl(elements);
-    Vector<Ref<Element>> coreElements;
-    coreElements.reserveInitialCapacity(apiAssociatedElements->size());
-    // FIXME: Add a non-constant iterator for API::Array.
-    for (const auto* nodeHandle : apiAssociatedElements->elementsOfType<InjectedBundleNodeHandle>()) {
-        if (!nodeHandle)
-            continue;
-        Node& coreNode = *const_cast<InjectedBundleNodeHandle*>(nodeHandle)->coreNode();
-        if (is<Element>(coreNode))
-            coreElements.uncheckedAppend(downcast<Element>(coreNode));
-    }
-    coreFrame->editor().substituteWithAlternativePresentationButton(WTFMove(coreElements), toWTFString(identifier));
-#else
-    UNUSED_PARAM(frame);
-    UNUSED_PARAM(elements);
-    UNUSED_PARAM(identifier);
-#endif
-}
-
-void WKBundleRemoveAlternativePresentationButton(WKBundleFrameRef frame, WKStringRef identifier)
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    if (auto* coreFrame = toImpl(frame)->coreFrame())
-        coreFrame->editor().removeAlternativePresentationButton(toWTFString(identifier));
-#else
-    UNUSED_PARAM(frame);
-    UNUSED_PARAM(identifier);
-#endif
-}
-
-WKArrayRef WKBundleElementsReplacedByAlternativePresentationButton(WKBundleFrameRef frame, WKStringRef identifier)
-{
-#if ENABLE(ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)
-    auto* coreFrame = toImpl(frame)->coreFrame();
-    if (!coreFrame)
-        return nullptr;
-    auto replacedElements = coreFrame->editor().elementsReplacedByAlternativePresentationButton(toWTFString(identifier));
-    Vector<RefPtr<API::Object>> apiReplacedElements;
-    apiReplacedElements.reserveInitialCapacity(replacedElements.size());
-    for (auto& element : replacedElements)
-        apiReplacedElements.uncheckedAppend(InjectedBundleNodeHandle::getOrCreate(element));
-    return toAPI(&API::Array::create(WTFMove(apiReplacedElements)).leakRef());
-#else
-    UNUSED_PARAM(identifier);
-    return nullptr;
-#endif
-}
index 2a763a2..0e83d35 100644 (file)
@@ -56,10 +56,6 @@ WK_EXPORT bool WKBundleFrameHandlesPageScaleGesture(WKBundleFrameRef frame);
 
 WK_EXPORT void WKBundleFrameFocus(WKBundleFrameRef frame);
 
-WK_EXPORT void WKBundleSubstituteWithAlternativePresentationButton(WKBundleFrameRef frame, WKArrayRef elements, WKStringRef identifier);
-WK_EXPORT void WKBundleRemoveAlternativePresentationButton(WKBundleFrameRef frame, WKStringRef identifier);
-WK_EXPORT WKArrayRef WKBundleElementsReplacedByAlternativePresentationButton(WKBundleFrameRef frame, WKStringRef identifier);
-
 #ifdef __cplusplus
 }
 #endif
index 1e9e237..e86b82e 100644 (file)
@@ -54,7 +54,6 @@ typedef WKStringRef (*WKBundlePagePlugInCreateStartLabelSubtitleCallback)(WKStri
 typedef WKStringRef (*WKBundlePagePlugInCreateExtraStyleSheetCallback)(const void *clientInfo);
 typedef WKStringRef (*WKBundlePagePlugInCreateExtraScriptCallback)(const void *clientInfo);
 typedef void (*WKBundlePageDidClickAutoFillButtonCallback)(WKBundlePageRef page, WKBundleNodeHandleRef inputElement, WKTypeRef* userData, const void *clientInfo);
-typedef void (*WKBundlePageDidClickAlternativePresentationButtonCallback)(WKBundlePageRef page, WKBundleNodeHandleRef inputElement, WKTypeRef* userData, const void *clientInfo);
 
 typedef struct WKBundlePageUIClientBase {
     int                                                                 version;
@@ -171,42 +170,3 @@ typedef struct WKBundlePageUIClientV3 {
     WKBundlePageDidClickAutoFillButtonCallback                          didClickAutoFillButton;
 } WKBundlePageUIClientV3;
 
-typedef struct WKBundlePageUIClientV4 {
-    WKBundlePageUIClientBase                                            base;
-
-    // Version 0.
-    WKBundlePageWillAddMessageToConsoleCallback                         willAddMessageToConsole;
-    WKBundlePageWillSetStatusbarTextCallback                            willSetStatusbarText;
-    WKBundlePageWillRunJavaScriptAlertCallback                          willRunJavaScriptAlert;
-    WKBundlePageWillRunJavaScriptConfirmCallback                        willRunJavaScriptConfirm;
-    WKBundlePageWillRunJavaScriptPromptCallback                         willRunJavaScriptPrompt;
-    WKBundlePageMouseDidMoveOverElementCallback                         mouseDidMoveOverElement;
-    WKBundlePageDidScrollCallback                                       pageDidScroll;
-    void*                                                               unused1;
-    WKBundlePageGenerateFileForUploadCallback                           shouldGenerateFileForUpload;
-    WKBundlePageGenerateFileForUploadCallback                           generateFileForUpload;
-    void*                                                               unused2;
-    WKBundlePageStatusBarIsVisibleCallback                              statusBarIsVisible;
-    WKBundlePageMenuBarIsVisibleCallback                                menuBarIsVisible;
-    WKBundlePageToolbarsAreVisibleCallback                              toolbarsAreVisible;
-
-    // Version 1.
-    WKBundlePageReachedAppCacheOriginQuotaCallback                      didReachApplicationCacheOriginQuota;
-
-    // Version 2.
-    WKBundlePageExceededDatabaseQuotaCallback                           didExceedDatabaseQuota;
-    WKBundlePagePlugInCreateStartLabelTitleCallback                     createPlugInStartLabelTitle;
-    WKBundlePagePlugInCreateStartLabelSubtitleCallback                  createPlugInStartLabelSubtitle;
-    WKBundlePagePlugInCreateExtraStyleSheetCallback                     createPlugInExtraStyleSheet;
-    WKBundlePagePlugInCreateExtraScriptCallback                         createPlugInExtraScript;
-
-    // Version 3.
-    void*                                                               unused3;
-    void*                                                               unused4;
-    void*                                                               unused5;
-
-    WKBundlePageDidClickAutoFillButtonCallback                          didClickAutoFillButton;
-
-    // Version 4.
-    WKBundlePageDidClickAlternativePresentationButtonCallback           didClickAlternativePresentationButton;
-} WKBundlePageUIClientV4;
index 55c960e..38e6c23 100644 (file)
@@ -212,14 +212,4 @@ void InjectedBundlePageUIClient::didClickAutoFillButton(WebPage& page, InjectedB
     userData = adoptRef(toImpl(userDataToPass));
 }
 
-void InjectedBundlePageUIClient::didClickAlternativePresentationButton(WebPage& page, InjectedBundleNodeHandle& nodeHandle, RefPtr<API::Object>& userData)
-{
-    if (!m_client.didClickAlternativePresentationButton)
-        return;
-
-    WKTypeRef userDataToPass = nullptr;
-    m_client.didClickAlternativePresentationButton(toAPI(&page), toAPI(&nodeHandle), &userDataToPass, m_client.base.clientInfo);
-    userData = adoptRef(toImpl(userDataToPass));
-}
-
 } // namespace WebKit
index 3f8c514..f157c82 100644 (file)
@@ -36,7 +36,7 @@ namespace API {
 class Object;
 
 template<> struct ClientTraits<WKBundlePageUIClientBase> {
-    typedef std::tuple<WKBundlePageUIClientV0, WKBundlePageUIClientV1, WKBundlePageUIClientV2, WKBundlePageUIClientV3, WKBundlePageUIClientV4> Versions;
+    typedef std::tuple<WKBundlePageUIClientV0, WKBundlePageUIClientV1, WKBundlePageUIClientV2, WKBundlePageUIClientV3> Versions;
 };
 }
 
@@ -70,8 +70,6 @@ public:
     String plugInExtraScript() const override;
 
     void didClickAutoFillButton(WebPage&, InjectedBundleNodeHandle&, RefPtr<API::Object>& userData) override;
-
-    void didClickAlternativePresentationButton(WebPage&, InjectedBundleNodeHandle&, RefPtr<API::Object>& userData) override;
 };
 
 } // namespace WebKit
index aaea800..d219530 100644 (file)
@@ -1189,18 +1189,6 @@ void WebChromeClient::handleAutoFillButtonClick(HTMLInputElement& inputElement)
     m_page.send(Messages::WebPageProxy::HandleAutoFillButtonClick(UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())));
 }
 
-void WebChromeClient::handleAlternativePresentationButtonClick(Node& node)
-{
-    RefPtr<API::Object> userData;
-
-    // Notify the bundle client.
-    auto nodeHandle = InjectedBundleNodeHandle::getOrCreate(node);
-    m_page.injectedBundleUIClient().didClickAlternativePresentationButton(m_page, nodeHandle.get(), userData);
-
-    // Notify the UIProcess.
-    m_page.send(Messages::WebPageProxy::HandleAlternativePresentationButtonClick(UserData(WebProcess::singleton().transformObjectsToHandles(userData.get()).get())));
-}
-
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
 
 void WebChromeClient::addPlaybackTargetPickerClient(uint64_t contextId)
index 2e63409..50c2e7e 100644 (file)
@@ -328,8 +328,6 @@ private:
 
     void handleAutoFillButtonClick(WebCore::HTMLInputElement&) final;
 
-    void handleAlternativePresentationButtonClick(WebCore::Node&) final;
-
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
     void addPlaybackTargetPickerClient(uint64_t /*contextId*/) final;
     void removePlaybackTargetPickerClient(uint64_t /*contextId*/) final;
index ae6ea1c..42e2441 100644 (file)
@@ -1,3 +1,15 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2017-12-19  Jer Noble  <jer.noble@apple.com>
 
         Playing media elements which call "pause(); play()" will have the play promise rejected.
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index 333f8bd..d57385c 100644 (file)
@@ -5,7 +5,6 @@ WEBKIT_OPTION_BEGIN()
 # we need a value different from the default defined in WebKitFeatures.cmake.
 # FIXME: Many of these defaults differ from the XCode build.
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ACCELERATED_OVERFLOW_SCROLLING PRIVATE ON)
-WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT PRIVATE ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_API_TESTS PRIVATE ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ATTACHMENT_ELEMENT PRIVATE ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ASYNC_SCROLLING PRIVATE ON)
index fd0ab97..1c5d168 100644 (file)
@@ -76,7 +76,6 @@ macro(WEBKIT_OPTION_BEGIN)
     WEBKIT_OPTION_DEFINE(ENABLE_ACCELERATED_2D_CANVAS "Toggle accelerated 2D canvas support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_ACCELERATED_OVERFLOW_SCROLLING "Toggle accelerated scrolling support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_ACCESSIBILITY "Toggle accessibility support" PRIVATE OFF)
-    WEBKIT_OPTION_DEFINE(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT "Toggle alternative presentation button element support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_API_TESTS "Enable public API unit tests" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_ASYNC_ITERATION "Toggle the async iteration API." PRIVATE ON)
     WEBKIT_OPTION_DEFINE(ENABLE_ASYNC_SCROLLING "Enable asynchronouse scrolling" PRIVATE OFF)
index 9c9f880..80f31d0 100644 (file)
@@ -4,7 +4,6 @@
     <ENABLE_3D_TRANSFORMS>ENABLE_3D_TRANSFORMS</ENABLE_3D_TRANSFORMS>
     <ENABLE_ACCELERATED_2D_CANVAS />
     <ENABLE_ACCELERATED_OVERFLOW_SCROLLING />
-    <ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT />
     <ENABLE_ATTACHMENT_ELEMENT>ENABLE_ATTACHMENT_ELEMENT</ENABLE_ATTACHMENT_ELEMENT>
     <ENABLE_CHANNEL_MESSAGING>ENABLE_CHANNEL_MESSAGING</ENABLE_CHANNEL_MESSAGING>
     <ENABLE_CSS3_CONDITIONAL_RULES>ENABLE_CSS3_CONDITIONAL_RULES</ENABLE_CSS3_CONDITIONAL_RULES>
@@ -77,7 +76,7 @@
   </PropertyGroup>
   <ItemDefinitionGroup>
     <ClCompile>
-      <PreprocessorDefinitions>$(ENABLE_3D_TRANSFORMS);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING);$(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT);$(ENABLE_ATTACHMENT_ELEMENT);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS3_CONDITIONAL_RULES);$(ENABLE_CSS_IMAGE_SET);$(ENABLE_CSS3_TEXT);$(ENABLE_CSS_BOX_DECORATION_BREAK);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_COMPOSITING);$(ENABLE_CSS_SELECTORS_LEVEL4);$(ENABLE_CSS_SHAPE_INSIDE);$(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED);$(ENABLE_CURSOR_VISIBILITY);$(ENABLE_CUSTOM_SCHEME_HANDLER);$(ENABLE_DATAGRID);$(ENABLE_DATALIST_ELEMENT);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_ENCRYPTED_MEDIA);$(ENABLE_FETCH_API);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_HIGH_DPI_CANVAS);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_TYPE_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_INTL);$(ENABLE_LEGACY_CSS_VENDOR_PREFIXES);$(ENABLE_LEGACY_ENCRYPTED_MEDIA);$(ENABLE_LINK_PREFETCH);$(ENABLE_LINK_PRERENDER);$(ENABLE_MATHML);$(ENABLE_METER_ELEMENT);$(ENABLE_MICRODATA);$(ENABLE_MOUSE_CURSOR_SCALE);$(ENABLE_NOTIFICATIONS);$(ENABLE_QUOTA);$(ENABLE_NAVIGATOR_CONTENT_UTILS);$(ENABLE_STREAMS_API);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHARED_WORKERS);$(ENABLE_MEDIA_CONTROLS_SCRIPT);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_SQL_DATABASE);$(ENABLE_STYLE_SCOPED);$(ENABLE_SUBPIXEL_LAYOUT);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_VIDEO_TRACK);$(ENABLE_WEB_AUDIO);$(ENABLE_WEBGL);$(ENABLE_WEBGPU);$(ENABLE_WEBVTT_REGIONS);$(ENABLE_XHR_TIMEOUT);$(ENABLE_XSLT);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>$(ENABLE_3D_TRANSFORMS);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING);$(ENABLE_ATTACHMENT_ELEMENT);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS3_CONDITIONAL_RULES);$(ENABLE_CSS_IMAGE_SET);$(ENABLE_CSS3_TEXT);$(ENABLE_CSS_BOX_DECORATION_BREAK);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_COMPOSITING);$(ENABLE_CSS_SELECTORS_LEVEL4);$(ENABLE_CSS_SHAPE_INSIDE);$(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED);$(ENABLE_CURSOR_VISIBILITY);$(ENABLE_CUSTOM_SCHEME_HANDLER);$(ENABLE_DATAGRID);$(ENABLE_DATALIST_ELEMENT);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_ENCRYPTED_MEDIA);$(ENABLE_FETCH_API);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_HIGH_DPI_CANVAS);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_TYPE_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_INTL);$(ENABLE_LEGACY_CSS_VENDOR_PREFIXES);$(ENABLE_LEGACY_ENCRYPTED_MEDIA);$(ENABLE_LINK_PREFETCH);$(ENABLE_LINK_PRERENDER);$(ENABLE_MATHML);$(ENABLE_METER_ELEMENT);$(ENABLE_MICRODATA);$(ENABLE_MOUSE_CURSOR_SCALE);$(ENABLE_NOTIFICATIONS);$(ENABLE_QUOTA);$(ENABLE_NAVIGATOR_CONTENT_UTILS);$(ENABLE_STREAMS_API);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHARED_WORKERS);$(ENABLE_MEDIA_CONTROLS_SCRIPT);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_SQL_DATABASE);$(ENABLE_STYLE_SCOPED);$(ENABLE_SUBPIXEL_LAYOUT);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_VIDEO_TRACK);$(ENABLE_WEB_AUDIO);$(ENABLE_WEBGL);$(ENABLE_WEBGPU);$(ENABLE_WEBVTT_REGIONS);$(ENABLE_XHR_TIMEOUT);$(ENABLE_XSLT);%(PreprocessorDefinitions)</PreprocessorDefinitions>
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup>
       <Value>$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING)</Value>
       <EnvironmentVariable>true</EnvironmentVariable>
     </BuildMacro>
-    <BuildMacro Include="ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT">
-      <Value>$(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)</Value>
-      <EnvironmentVariable>true</EnvironmentVariable>
-    </BuildMacro>
     <BuildMacro Include="ENABLE_ATTACHMENT_ELEMENT">
       <Value>$(ENABLE_ATTACHMENT_ELEMENT)</Value>
       <EnvironmentVariable>true</EnvironmentVariable>
index 3dbfc09..e57d830 100644 (file)
@@ -4,7 +4,6 @@
     <ENABLE_3D_TRANSFORMS>ENABLE_3D_TRANSFORMS</ENABLE_3D_TRANSFORMS>
     <ENABLE_ACCELERATED_2D_CANVAS />
     <ENABLE_ACCELERATED_OVERFLOW_SCROLLING />
-    <ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT />
     <ENABLE_ATTACHMENT_ELEMENT>ENABLE_ATTACHMENT_ELEMENT</ENABLE_ATTACHMENT_ELEMENT>
     <ENABLE_CHANNEL_MESSAGING>ENABLE_CHANNEL_MESSAGING</ENABLE_CHANNEL_MESSAGING>
     <ENABLE_CSS3_CONDITIONAL_RULES>ENABLE_CSS3_CONDITIONAL_RULES</ENABLE_CSS3_CONDITIONAL_RULES>
@@ -76,7 +75,7 @@
   </PropertyGroup>
   <ItemDefinitionGroup>
     <ClCompile>
-      <PreprocessorDefinitions>$(ENABLE_3D_TRANSFORMS);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING);$(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT);$(ENABLE_ATTACHMENT_ELEMENT);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS3_CONDITIONAL_RULES);$(ENABLE_CSS_IMAGE_SET);$(ENABLE_CSS3_TEXT);$(ENABLE_CSS_BOX_DECORATION_BREAK);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_COMPOSITING);$(ENABLE_CSS_SELECTORS_LEVEL4);$(ENABLE_CSS_SHAPE_INSIDE);$(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED);$(ENABLE_CURSOR_VISIBILITY);$(ENABLE_CUSTOM_SCHEME_HANDLER);$(ENABLE_DATAGRID);$(ENABLE_DATALIST_ELEMENT);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_ENCRYPTED_MEDIA);$(ENABLE_FETCH_API);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_HIGH_DPI_CANVAS);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_TYPE_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_INTL);$(ENABLE_LEGACY_CSS_VENDOR_PREFIXES);$(ENABLE_LEGACY_ENCRYPTED_MEDIA);$(ENABLE_LINK_PREFETCH);$(ENABLE_LINK_PRERENDER);$(ENABLE_MATHML);$(ENABLE_METER_ELEMENT);$(ENABLE_MICRODATA);$(ENABLE_MOUSE_CURSOR_SCALE);$(ENABLE_NOTIFICATIONS);$(ENABLE_QUOTA);$(ENABLE_NAVIGATOR_CONTENT_UTILS);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHARED_WORKERS);$(ENABLE_MEDIA_CONTROLS_SCRIPT);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_SQL_DATABASE);$(ENABLE_STYLE_SCOPED);$(ENABLE_SUBPIXEL_LAYOUT);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_VIDEO_TRACK);$(ENABLE_WEB_AUDIO);$(ENABLE_WEBGL);$(ENABLE_WEBVTT_REGIONS);$(ENABLE_XHR_TIMEOUT);$(ENABLE_XSLT);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>$(ENABLE_3D_TRANSFORMS);$(ENABLE_ACCELERATED_2D_CANVAS);$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING);$(ENABLE_ATTACHMENT_ELEMENT);$(ENABLE_CHANNEL_MESSAGING);$(ENABLE_CSS3_CONDITIONAL_RULES);$(ENABLE_CSS_IMAGE_SET);$(ENABLE_CSS3_TEXT);$(ENABLE_CSS_BOX_DECORATION_BREAK);$(ENABLE_CSS_SHADERS);$(ENABLE_CSS_COMPOSITING);$(ENABLE_CSS_SELECTORS_LEVEL4);$(ENABLE_CSS_SHAPE_INSIDE);$(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED);$(ENABLE_CURSOR_VISIBILITY);$(ENABLE_CUSTOM_SCHEME_HANDLER);$(ENABLE_DATAGRID);$(ENABLE_DATALIST_ELEMENT);$(ENABLE_DEVICE_ORIENTATION);$(ENABLE_DIRECTORY_UPLOAD);$(ENABLE_ENCRYPTED_MEDIA);$(ENABLE_FETCH_API);$(ENABLE_FILE_SYSTEM);$(ENABLE_FULLSCREEN_API);$(ENABLE_GAMEPAD);$(ENABLE_GEOLOCATION);$(ENABLE_HIGH_DPI_CANVAS);$(ENABLE_ICONDATABASE);$(ENABLE_INDEXED_DATABASE);$(ENABLE_INPUT_TYPE_COLOR);$(ENABLE_INPUT_SPEECH);$(ENABLE_INPUT_TYPE_DATE);$(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE);$(ENABLE_INPUT_TYPE_DATETIMELOCAL);$(ENABLE_INPUT_TYPE_MONTH);$(ENABLE_INPUT_TYPE_TIME);$(ENABLE_INPUT_TYPE_WEEK);$(ENABLE_INTL);$(ENABLE_LEGACY_CSS_VENDOR_PREFIXES);$(ENABLE_LEGACY_ENCRYPTED_MEDIA);$(ENABLE_LINK_PREFETCH);$(ENABLE_LINK_PRERENDER);$(ENABLE_MATHML);$(ENABLE_METER_ELEMENT);$(ENABLE_MICRODATA);$(ENABLE_MOUSE_CURSOR_SCALE);$(ENABLE_NOTIFICATIONS);$(ENABLE_QUOTA);$(ENABLE_NAVIGATOR_CONTENT_UTILS);$(ENABLE_SCRIPTED_SPEECH);$(ENABLE_SHARED_WORKERS);$(ENABLE_MEDIA_CONTROLS_SCRIPT);$(ENABLE_MEDIA_SOURCE);$(ENABLE_MEDIA_STATISTICS);$(ENABLE_SQL_DATABASE);$(ENABLE_STYLE_SCOPED);$(ENABLE_SUBPIXEL_LAYOUT);$(ENABLE_SVG_DOM_OBJC_BINDINGS);$(ENABLE_SVG_FONTS);$(ENABLE_VIDEO);$(ENABLE_VIDEO_TRACK);$(ENABLE_WEB_AUDIO);$(ENABLE_WEBGL);$(ENABLE_WEBVTT_REGIONS);$(ENABLE_XHR_TIMEOUT);$(ENABLE_XSLT);%(PreprocessorDefinitions)</PreprocessorDefinitions>
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup>
       <Value>$(ENABLE_ACCELERATED_OVERFLOW_SCROLLING)</Value>
       <EnvironmentVariable>true</EnvironmentVariable>
     </BuildMacro>
-    <BuildMacro Include="ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT">
-      <Value>$(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT)</Value>
-      <EnvironmentVariable>true</EnvironmentVariable>
-    </BuildMacro>
     <BuildMacro Include="ENABLE_ATTACHMENT_ELEMENT">
       <Value>$(ENABLE_ATTACHMENT_ELEMENT)</Value>
       <EnvironmentVariable>true</EnvironmentVariable>
index 37b68b5..cae89be 100644 (file)
@@ -1,3 +1,21 @@
+2017-12-20  Daniel Bates  <dabates@apple.com>
+
+        Remove Alternative Presentation Button
+        https://bugs.webkit.org/show_bug.cgi?id=180500
+        <rdar://problem/35891047>
+
+        Reviewed by Simon Fraser.
+
+        We no longer need the alternative presentation button.
+
+        * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
+        * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
+        * TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm: Removed.
+        * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
+        (TEST):
+        (-[AlternativePresentationButtonDelegate _webView:didClickAlternativePresentationButtonWithUserInfo:]): Deleted.
+        (-[AlternativePresentationButtonDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
+
 2017-12-20  Ryosuke Niwa  <rniwa@webkit.org>
 
         REGRESSION(r222699): Drag & drop from a web page to Gmail fails
index bf42b2d..0ade509 100644 (file)
@@ -42,8 +42,6 @@ ENABLE_3D_TRANSFORMS = ENABLE_3D_TRANSFORMS;
 ENABLE_ACCELERATED_2D_CANVAS = ;
 ENABLE_ACCELERATED_OVERFLOW_SCROLLING[sdk=iphone*] = ENABLE_ACCELERATED_OVERFLOW_SCROLLING;
 
-ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT = ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT;
-
 ENABLE_APPLE_PAY[sdk=iphone*] = $(ENABLE_APPLE_PAY_$(PLATFORM_NAME));
 ENABLE_APPLE_PAY_iphoneos = ENABLE_APPLE_PAY;
 ENABLE_APPLE_PAY_iphonesimulator = ENABLE_APPLE_PAY;
@@ -251,4 +249,4 @@ ENABLE_DATA_INTERACTION_iphonesimulator = ENABLE_DATA_INTERACTION;
 ENABLE_DATA_INTERACTION[sdk=iphoneos10*] = ;
 ENABLE_DATA_INTERACTION[sdk=iphonesimulator10*] = ;
 
-FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_ALTERNATIVE_PRESENTATION_BUTTON_ELEMENT) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
\ No newline at end of file
+FEATURE_DEFINES = $(ENABLE_3D_TRANSFORMS) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_APPLE_PAY) $(ENABLE_APPLE_PAY_SESSION_V3) $(ENABLE_APPLICATION_MANIFEST) $(ENABLE_ATTACHMENT_ELEMENT) $(ENABLE_AVF_CAPTIONS) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CONTENT_FILTERING) $(ENABLE_CSS_ANIMATIONS_LEVEL_2) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_SCROLL_SNAP) $(ENABLE_CSS_SELECTORS_LEVEL4) $(ENABLE_CSS_TRAILING_WORD) $(ENABLE_CSS3_TEXT) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATA_INTERACTION) $(ENABLE_DATACUE_VALUE) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DRAG_SUPPORT) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_FAST_JIT_PERMISSIONS) $(ENABLE_FILTERS_LEVEL_2) $(ENABLE_FTL_JIT) $(ENABLE_ASYNC_ITERATION) $(ENABLE_FULLSCREEN_API) $(ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_INDEXED_DATABASE_IN_WORKERS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INTERSECTION_OBSERVER) $(ENABLE_INTL) $(ENABLE_IOS_GESTURE_EVENTS) $(ENABLE_IOS_TOUCH_EVENTS) $(ENABLE_JIT) $(ENABLE_KEYBOARD_KEY_ATTRIBUTE) $(ENABLE_KEYBOARD_CODE_ATTRIBUTE) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_CUSTOM_PROTOCOL_MANAGER) $(ENABLE_LEGACY_ENCRYPTED_MEDIA) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MAC_GESTURE_EVENTS) $(ENABLE_MATHML) $(ENABLE_MEDIA_CAPTURE) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SESSION) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_MEDIA_STREAM) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NAVIGATOR_STANDALONE) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAYMENT_REQUEST) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_POINTER_LOCK) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_RESOURCE_USAGE) $(ENABLE_RUBBER_BANDING) $(ENABLE_SERVICE_CONTROLS) $(ENABLE_SERVICE_WORKER) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_STREAMS_API) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_USERSELECT_ALL) $(ENABLE_USER_MESSAGE_HANDLERS) $(ENABLE_VARIATION_FONTS) $(ENABLE_VIDEO_PRESENTATION_MODE) $(ENABLE_MAC_VIDEO_TOOLBOX) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_RTC) $(ENABLE_WEBASSEMBLY) $(ENABLE_WEBGL) $(ENABLE_WEBGL2) $(ENABLE_WEBGPU) $(ENABLE_WIRELESS_PLAYBACK_TARGET) $(ENABLE_XSLT);
index 0778b05..165eadc 100644 (file)
                CE06DF9B1E1851F200E570C9 /* SecurityOrigin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE06DF9A1E1851F200E570C9 /* SecurityOrigin.cpp */; };
                CE14F1A4181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CE14F1A2181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html */; };
                CE1866491F72E8F100A0CAB6 /* MarkerSubrange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE1866471F72E8F100A0CAB6 /* MarkerSubrange.cpp */; };
-               CE2C13881FBDF98D0032DD6C /* ClickAlternativePresentationButton.mm in Sources */ = {isa = PBXBuildFile; fileRef = CE2C13861FBD125C0032DD6C /* ClickAlternativePresentationButton.mm */; };
                CE3524F81B1431F60028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE3524F21B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp */; };
                CE3524F91B1441C40028A7C5 /* TextFieldDidBeginAndEndEditing.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CE3524F11B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing.cpp */; };
                CE3524FA1B1443890028A7C5 /* input-focus-blur.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = CE3524F51B142BBB0028A7C5 /* input-focus-blur.html */; };
                CE06DF9A1E1851F200E570C9 /* SecurityOrigin.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SecurityOrigin.cpp; sourceTree = "<group>"; };
                CE14F1A2181873B0001C2705 /* WillPerformClientRedirectToURLCrash.html */ = {isa = PBXFileReference; lastKnownFileType = text.html; path = WillPerformClientRedirectToURLCrash.html; sourceTree = "<group>"; };
                CE1866471F72E8F100A0CAB6 /* MarkerSubrange.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = MarkerSubrange.cpp; sourceTree = "<group>"; };
-               CE2C13861FBD125C0032DD6C /* ClickAlternativePresentationButton.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ClickAlternativePresentationButton.mm; sourceTree = "<group>"; };
                CE32C7C718184C4900CD8C28 /* WillPerformClientRedirectToURLCrash.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WillPerformClientRedirectToURLCrash.mm; sourceTree = "<group>"; };
                CE3524F11B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextFieldDidBeginAndEndEditing.cpp; sourceTree = "<group>"; };
                CE3524F21B142B8D0028A7C5 /* TextFieldDidBeginAndEndEditing_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextFieldDidBeginAndEndEditing_Bundle.cpp; sourceTree = "<group>"; };
                                37A709AC1E3EA7E800CA5969 /* BundleRangeHandleProtocol.h */,
                                1C2B817E1C891E4200A5529F /* CancelFontSubresource.mm */,
                                1C2B81811C891EFA00A5529F /* CancelFontSubresourcePlugIn.mm */,
-                               CE2C13861FBD125C0032DD6C /* ClickAlternativePresentationButton.mm */,
                                5CB18BA71F5645B200EE23C4 /* ClickAutoFillButton.mm */,
                                1AAD19F51C7CE20300831E47 /* Coding.mm */,
                                7C3DB8E21D12129B00AE8CC3 /* CommandBackForward.mm */,
                                A13EBBB01B87436F00097110 /* BundleParametersPlugIn.mm in Sources */,
                                37A709AF1E3EA97E00CA5969 /* BundleRangeHandlePlugIn.mm in Sources */,
                                1C2B81831C891F0900A5529F /* CancelFontSubresourcePlugIn.mm in Sources */,
-                               CE2C13881FBDF98D0032DD6C /* ClickAlternativePresentationButton.mm in Sources */,
                                5CB18BA81F5645E300EE23C4 /* ClickAutoFillButton.mm in Sources */,
                                A14FC58B1B89927100D107EB /* ContentFilteringPlugIn.mm in Sources */,
                                A13EBBAB1B87434600097110 /* PlatformUtilitiesCocoa.mm in Sources */,
diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm
deleted file mode 100644 (file)
index 821829e..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (C) 2017 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#import "config.h"
-
-#if WK_API_ENABLED
-
-#import <WebKit/WKBundleNodeHandlePrivate.h>
-#import <WebKit/WKBundlePage.h>
-#import <WebKit/WKBundlePageUIClient.h>
-#import <WebKit/WKDOMDocument.h>
-#import <WebKit/WKDOMElement.h>
-#import <WebKit/WKDOMNodePrivate.h>
-#import <WebKit/WKDOMText.h>
-#import <WebKit/WKString.h>
-#import <WebKit/WKWebProcessPlugIn.h>
-#import <WebKit/WKWebProcessPlugInBrowserContextControllerPrivate.h>
-#import <WebKit/WKWebProcessPlugInFrame.h>
-#import <WebKit/WKWebProcessPlugInFramePrivate.h>
-#import <WebKit/WKWebProcessPlugInNodeHandle.h>
-#import <WebKit/WKWebProcessPlugInScriptWorld.h>
-#import <wtf/RetainPtr.h>
-
-void didClickAlternativePresentationButton(WKBundlePageRef, WKBundleNodeHandleRef, WKTypeRef* userData, const void *)
-{
-    *userData = WKStringCreateWithUTF8CString("user data string");
-}
-
-@interface ClickAlternativePresentationButton : NSObject <WKWebProcessPlugIn>
-@end
-
-@implementation ClickAlternativePresentationButton
-
-- (void)webProcessPlugIn:(WKWebProcessPlugInController *)plugInController didCreateBrowserContextController:(WKWebProcessPlugInBrowserContextController *)browserContextController
-{
-    WKBundlePageUIClientV4 client;
-    memset(&client, 0, sizeof(client));
-    client.base.version = 4;
-    client.didClickAlternativePresentationButton = didClickAlternativePresentationButton;
-    WKBundlePageSetUIClient([browserContextController _bundlePageRef], &client.base);
-
-    WKDOMDocument *document = [browserContextController mainFrameDocument];
-    WKDOMElement *inputElement = [document createElement:@"input"];
-    [[document body] appendChild:inputElement];
-
-    auto *jsContext = [[browserContextController mainFrame] jsContextForWorld:[WKWebProcessPlugInScriptWorld normalWorld]];
-    auto *jsValue = [jsContext evaluateScript:@"document.querySelector('input')"];
-
-    RetainPtr<NSArray<WKWebProcessPlugInNodeHandle *>> elements = @[[WKWebProcessPlugInNodeHandle nodeHandleWithJSValue:jsValue inContext:jsContext]];
-    [[browserContextController mainFrame] substituteElements:elements.get() withAlternativePresentationButtonWithIdentifier:@"1"];
-
-    [jsContext evaluateScript:@"alert('ready for click!')"];
-}
-
-@end
-
-#endif // WK_API_ENABLED
index 8ea1a4a..5a67d3f 100644 (file)
@@ -523,43 +523,6 @@ TEST(WebKit, ClickAutoFillButton)
     [webView mouseDownAtPoint:buttonLocation simulatePressure:NO];
     [webView mouseUpAtPoint:buttonLocation];
     TestWebKitAPI::Util::run(&done);
-    readyForClick = false;
-}
-
-@interface AlternativePresentationButtonDelegate : NSObject <WKUIDelegatePrivate>
-@end
-
-@implementation AlternativePresentationButtonDelegate
-
-- (void)_webView:(WKWebView *)webView didClickAlternativePresentationButtonWithUserInfo:(id <NSSecureCoding>)userInfo
-{
-    ASSERT_TRUE([(id<NSObject>)userInfo isKindOfClass:[NSString class]]);
-    ASSERT_STREQ([(NSString*)userInfo UTF8String], "user data string");
-    done = true;
-}
-
-- (void)webView:(WKWebView *)webView runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WKFrameInfo *)frame completionHandler:(void (^)(void))completionHandler
-{
-    completionHandler();
-    ASSERT_STREQ(message.UTF8String, "ready for click!");
-    readyForClick = true;
-}
-
-@end
-
-TEST(WebKit, ClickAlternativePresentationButton)
-{
-    WKWebViewConfiguration *configuration = [WKWebViewConfiguration _test_configurationWithTestPlugInClassName:@"ClickAlternativePresentationButton"];
-
-    auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 0, 800, 600) configuration:configuration]);
-    auto delegate = adoptNS([[AlternativePresentationButtonDelegate alloc] init]);
-    [webView setUIDelegate:delegate.get()];
-    TestWebKitAPI::Util::run(&readyForClick);
-    NSPoint buttonLocation = NSMakePoint(130, 575);
-    [webView mouseDownAtPoint:buttonLocation simulatePressure:NO];
-    [webView mouseUpAtPoint:buttonLocation];
-    TestWebKitAPI::Util::run(&done);
-    readyForClick = false;
 }
 
 @interface AutoFillAvailableDelegate : NSObject <WKUIDelegatePrivate>