AX: Remove deprecated Accessibility Object Model events
authorcfleizach@apple.com <cfleizach@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 24 Apr 2019 07:46:08 +0000 (07:46 +0000)
committercfleizach@apple.com <cfleizach@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 24 Apr 2019 07:46:08 +0000 (07:46 +0000)
https://bugs.webkit.org/show_bug.cgi?id=197073
<rdar://problem/50027819>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: accessibility/mac/replace-text-with-range.html

* DerivedSources.make:
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityListBoxOption.cpp:
(WebCore::AccessibilityListBoxOption::setSelected):
* accessibility/AccessibilityMediaObject.cpp:
(WebCore::AccessibilityMediaObject::increment):
(WebCore::AccessibilityMediaObject::decrement):
* accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::setSelected):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
(WebCore::AccessibilityObject::replaceTextInRange):
(WebCore::AccessibilityObject::scrollToMakeVisible const):
(WebCore::AccessibilityObject::shouldDispatchAccessibilityEvent const): Deleted.
(WebCore::AccessibilityObject::dispatchAccessibilityEvent const): Deleted.
(WebCore::AccessibilityObject::dispatchAccessibilityEventWithType const): Deleted.
(WebCore::AccessibilityObject::dispatchAccessibleSetValueEvent const): Deleted.
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::setFocused):
(WebCore::AccessibilityRenderObject::setValue):
* accessibility/AccessibilityScrollbar.cpp:
(WebCore::AccessibilityScrollbar::setValue):
* accessibility/AccessibilitySlider.cpp:
(WebCore::AccessibilitySlider::setValue):
* accessibility/ios/AccessibilityObjectIOS.mm:
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const):
(WebCore::AccessibilityObject::hasAccessibleDismissEventListener const): Deleted.
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityPerformEscape]): Deleted.
(-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]): Deleted.
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
* dom/Element.idl:
* dom/EventNames.h:
* dom/EventNames.in:
* html/HTMLAttributeNames.in:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::createEventHandlerNameMap):
* page/Settings.yaml:
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setAccessibilityEventsEnabled): Deleted.
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

Source/WebKit:

* Platform/spi/ios/AccessibilitySupportSPI.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
(-[WKWebView dealloc]):
(accessibilityEventsEnabledChangedCallback): Deleted.
(-[WKWebView _updateAccessibilityEventsEnabled]): Deleted.
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/Cocoa/WKFullKeyboardAccessWatcher.mm:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateAccessibilityEventsEnabled): Deleted.
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updateAccessibilityEventsEnabled): Deleted.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

Source/WTF:

* wtf/Platform.h:

LayoutTests:

* accessibility/mac/AOM-event-accessiblesetvalue-expected.txt: Removed.
* accessibility/mac/AOM-event-accessiblesetvalue.html: Removed.
* accessibility/mac/AOM-events-all-expected.txt: Removed.
* accessibility/mac/AOM-events-all.html: Removed.
* accessibility/mac/AOM-events-expected.txt: Removed.
* accessibility/mac/AOM-events-webarea-crash-expected.txt: Removed.
* accessibility/mac/AOM-events-webarea-crash.html: Removed.
* accessibility/mac/AOM-events.html: Removed.
* accessibility/mac/replace-text-with-range-expected.txt: Replaced.
* accessibility/mac/replace-text-with-range.html: Replaced.

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

60 files changed:
LayoutTests/ChangeLog
LayoutTests/accessibility/ios-simulator/AOM-dismiss-event-expected.txt [deleted file]
LayoutTests/accessibility/ios-simulator/AOM-dismiss-event.html [deleted file]
LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus-expected.txt [deleted file]
LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus.html [deleted file]
LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue-expected.txt [deleted file]
LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue.html [deleted file]
LayoutTests/accessibility/mac/AOM-events-all-expected.txt [deleted file]
LayoutTests/accessibility/mac/AOM-events-all.html [deleted file]
LayoutTests/accessibility/mac/AOM-events-expected.txt [deleted file]
LayoutTests/accessibility/mac/AOM-events-webarea-crash-expected.txt [deleted file]
LayoutTests/accessibility/mac/AOM-events-webarea-crash.html [deleted file]
LayoutTests/accessibility/mac/AOM-events.html [deleted file]
LayoutTests/js/dom/dom-static-property-for-in-iteration-expected.txt
LayoutTests/platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt
LayoutTests/platform/ios-wk2/js/dom/dom-static-property-for-in-iteration-expected.txt
LayoutTests/platform/mac-wk1/TestExpectations
LayoutTests/platform/mac-wk2/js/dom/dom-static-property-for-in-iteration-expected.txt
LayoutTests/platform/wpe/js/dom/dom-static-property-for-in-iteration-expected.txt
Source/WTF/ChangeLog
Source/WTF/wtf/Platform.h
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources-input.xcfilelist
Source/WebCore/DerivedSources-output.xcfilelist
Source/WebCore/DerivedSources.make
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/accessibility/AccessibilityListBoxOption.cpp
Source/WebCore/accessibility/AccessibilityMediaObject.cpp
Source/WebCore/accessibility/AccessibilityMenuListOption.cpp
Source/WebCore/accessibility/AccessibilityNodeObject.cpp
Source/WebCore/accessibility/AccessibilityObject.cpp
Source/WebCore/accessibility/AccessibilityObject.h
Source/WebCore/accessibility/AccessibilityRenderObject.cpp
Source/WebCore/accessibility/AccessibilityScrollbar.cpp
Source/WebCore/accessibility/AccessibilitySlider.cpp
Source/WebCore/accessibility/AccessibleSetValueEvent.idl [deleted file]
Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm
Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm
Source/WebCore/dom/Element.idl
Source/WebCore/dom/EventNames.h
Source/WebCore/dom/EventNames.in
Source/WebCore/html/HTMLAttributeNames.in
Source/WebCore/html/HTMLElement.cpp
Source/WebCore/page/Settings.yaml
Source/WebCore/testing/InternalSettings.cpp
Source/WebCore/testing/InternalSettings.h
Source/WebCore/testing/InternalSettings.idl
Source/WebKit/ChangeLog
Source/WebKit/Platform/spi/ios/AccessibilitySupportSPI.h
Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h
Source/WebKit/UIProcess/Cocoa/WKFullKeyboardAccessWatcher.mm
Source/WebKit/UIProcess/WebPageProxy.cpp
Source/WebKit/UIProcess/WebPageProxy.h
Source/WebKit/WebProcess/WebPage/WebPage.cpp
Source/WebKit/WebProcess/WebPage/WebPage.h
Source/WebKit/WebProcess/WebPage/WebPage.messages.in

index a27c3b2..68d97e5 100644 (file)
@@ -1,3 +1,22 @@
+2019-04-24  chris fleizach  <cfleizach@apple.com>
+
+        AX: Remove deprecated Accessibility Object Model events
+        https://bugs.webkit.org/show_bug.cgi?id=197073
+        <rdar://problem/50027819>
+
+        Reviewed by Ryosuke Niwa.
+
+        * accessibility/mac/AOM-event-accessiblesetvalue-expected.txt: Removed.
+        * accessibility/mac/AOM-event-accessiblesetvalue.html: Removed.
+        * accessibility/mac/AOM-events-all-expected.txt: Removed.
+        * accessibility/mac/AOM-events-all.html: Removed.
+        * accessibility/mac/AOM-events-expected.txt: Removed.
+        * accessibility/mac/AOM-events-webarea-crash-expected.txt: Removed.
+        * accessibility/mac/AOM-events-webarea-crash.html: Removed.
+        * accessibility/mac/AOM-events.html: Removed.
+        * accessibility/mac/replace-text-with-range-expected.txt: Replaced.
+        * accessibility/mac/replace-text-with-range.html: Replaced.
+
 2019-04-23  John Wilander  <wilander@apple.com>
 
         Move Ad Click Attribution from internal feature to experimental feature
diff --git a/LayoutTests/accessibility/ios-simulator/AOM-dismiss-event-expected.txt b/LayoutTests/accessibility/ios-simulator/AOM-dismiss-event-expected.txt
deleted file mode 100644 (file)
index 2a40cad..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-test1
-test2
-This tests the accessibledismiss event on iOS.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-received DOM Level 1 accessibledismiss event
-received accessibledismiss event
-PASS dispatched is true
-PASS dispatched is false
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/ios-simulator/AOM-dismiss-event.html b/LayoutTests/accessibility/ios-simulator/AOM-dismiss-event.html
deleted file mode 100644 (file)
index 4ac1f4e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body id="body">
-<script src="../../resources/js-test-pre.js"></script>
-<div id="content">
-
-<div id="event" role="group" tabindex=0 onaccessibledismiss="eventCallback(true)">
-test1
-</div>
-
-<div id="no_event" role="group" tabindex=0>
-test2
-</div>
-
-</div>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-
-    description("This tests the accessibledismiss event on iOS.");
-
-    function eventCallback(domLevel1) {
-        debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessibledismiss event");
-        if (domLevel1)
-            document.getElementById("event").removeAttribute("onaccessibledismiss");
-    }
-
-    if (window.accessibilityController) {
-
-        var node = document.getElementById("event");
-        var axNode = accessibilityController.accessibleElementById("event");
-        // DOM Level 1 event
-        axNode.dismiss();
-        // DOM Level 2 event
-        node.onaccessibledismiss = function(event) {
-            eventCallback();
-        };
-
-        var dispatched = axNode.dismiss();
-        shouldBeTrue("dispatched");
-
-        node = document.getElementById("no_event");
-        axNode = accessibilityController.accessibleElementById("no_event");
-        dispatched = axNode.dismiss();
-        shouldBeFalse("dispatched");
-    }
-</script>
-
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus-expected.txt b/LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus-expected.txt
deleted file mode 100644 (file)
index 17f087a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-focusable
-This tests that accessibilityElementDidBecomeFocused on elements won't set focus.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-received accessiblefocus event
-PASS link === document.activeElement is false
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus.html b/LayoutTests/accessibility/ios-simulator/accessibility-focus-do-not-set-focus.html
deleted file mode 100644 (file)
index ad8d82d..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
-<html>
-<head>
-<script src="../../resources/js-test-pre.js"></script>
-</head>
-<body id="body">
-
-<a id="link" onaccessiblefocus="focusEventCallback()" href="#" tabIndex="0">focusable</a>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-
-    description("This tests that accessibilityElementDidBecomeFocused on elements won't set focus.");
-
-    var link = document.getElementById("link");
-
-    if (window.accessibilityController) {
-       jsTestIsAsync = true;
-    
-        var linkAX = accessibilityController.accessibleElementById("link");
-        linkAX.assistiveTechnologySimulatedFocus();
-    }
-
-    // Also make sure we dispatch the accessiblefocus event.
-    function focusEventCallback() {
-        debug("received accessiblefocus event");
-        shouldBeFalse("link === document.activeElement");
-        finishJSTest();
-    }
-    
-</script>
-
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue-expected.txt b/LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue-expected.txt
deleted file mode 100644 (file)
index a99cc03..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-button
-contenteditable new value
-
-scrollbar
-This tests accessiblesetvalue event.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-
-Test Combobox.
-combobox accessible set value to: combobox new value
-
-Test Contenteditable.
-contenteditable accessible set value to: contenteditable new value
-PASS axNode.stringValue is 'AXValue: contenteditable new value'
-
-Test Slider.
-slider accessible set value to: 70
-
-Test DOM Level 1 event.
-scroller accessible set value to: 70
-
-Test Scrollbar.
-scroller accessible set value to: 60
-
-Test that accessiblesetvalue event can only be dispatched to nodes that support setting their values.
-PASS receivedAXEvent is false
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue.html b/LayoutTests/accessibility/mac/AOM-event-accessiblesetvalue.html
deleted file mode 100644 (file)
index 2a1ec07..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body id="body">
-<script src="../../resources/js-test-pre.js"></script>
-<div id="content">
-
-<button id="button">button</button>
-<div contenteditable="true" id="contenteditable">current</div>
-<div id="combobox" role="combobox" aria-expanded="false" aria-label="Test"></div>
-<input id="slider" type="range">
-<div id="scroller" aria-valuenow="55" role="scrollbar" onaccessiblesetvalue="domLevel1Callback(event)">scrollbar</div>
-
-</div>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-
-    description("This tests accessiblesetvalue event.");
-
-    if (window.accessibilityController) {
-       jsTestIsAsync = true;
-       
-       var node;
-       var axNode;
-       var receivedAXEvent = false;
-       
-       testCombobox();
-       
-       function testCanSetValue() {
-           debug("\nTest that accessiblesetvalue event can only be dispatched to nodes that support setting their values.");
-           node = document.getElementById("button");
-           axNode = accessibilityController.accessibleElementById("button");
-           node.onaccessiblesetvalue = function(event) {
-              receivedAXEvent = true;
-              debug("This shouldn't be reached.");
-           };
-           axNode.setValue("test value");
-           
-           setTimeout(
-               function(){
-                   shouldBeFalse("receivedAXEvent");
-                   finishJSTest();
-               }, 
-               50);
-       }
-       
-       function testCombobox() {
-           debug("\nTest Combobox."); 
-           node = document.getElementById("combobox");
-           axNode = accessibilityController.accessibleElementById("combobox");
-           node.onaccessiblesetvalue = function(event) {
-              debug("combobox accessible set value to: " + event.value);
-              testContenteditable();
-           };
-           axNode.setValue("combobox new value");
-       }
-       
-       function testContenteditable() {
-           debug("\nTest Contenteditable."); 
-           node = document.getElementById("contenteditable");
-           axNode = accessibilityController.accessibleElementById("contenteditable");
-           node.onaccessiblesetvalue = function(event) {
-              debug("contenteditable accessible set value to: " + event.value);
-           };
-           accessibilityController.addNotificationListener(function(element, notification) {
-               if (notification == "AXValueChanged") {
-                   shouldBe("axNode.stringValue", "'AXValue: contenteditable new value'");
-                   node.blur();
-                   accessibilityController.removeNotificationListener();
-                   testSlider();
-               }
-           });
-           node.focus();
-           axNode.setValue("contenteditable new value");
-       }
-       
-       function testSlider() {
-           debug("\nTest Slider."); 
-           node = document.getElementById("slider");
-           axNode = accessibilityController.accessibleElementById("slider");
-           node.onaccessiblesetvalue = function(event) {
-              debug("slider accessible set value to: " + event.value);
-              testDOMLevel1Event();
-           };
-           axNode.setValue("70");
-       }
-
-       function domLevel1Callback(event) {
-           debug("scroller accessible set value to: " + event.value);
-           document.getElementById("scroller").removeAttribute("onaccessiblesetvalue");
-           testScrollbar();
-       }
-
-       function testDOMLevel1Event() {
-           debug("\nTest DOM Level 1 event."); 
-           axNode = accessibilityController.accessibleElementById("scroller");
-           axNode.setValue("70");
-       }
-       
-       function testScrollbar() {
-           debug("\nTest Scrollbar."); 
-           node = document.getElementById("scroller");
-           axNode = accessibilityController.accessibleElementById("scroller");
-           node.onaccessiblesetvalue = function(event) {
-              debug("scroller accessible set value to: " + event.value);
-              testCanSetValue();
-           };
-           axNode.setValue("60");
-       }
-
-    } else {
-        testFailed("Could not load accessibility controller");
-    }
-
-</script>
-
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/mac/AOM-events-all-expected.txt b/LayoutTests/accessibility/mac/AOM-events-all-expected.txt
deleted file mode 100644 (file)
index d038110..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-  button
-option 1
-
-This tests all accessibility events.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-
-Test accessibleincrement and accessibledecrement
-received DOM Level 1 accessibleincrement event
-received DOM Level 1 accessibledecrement event
-received accessibleincrement event
-received accessibledecrement event
-
-Test onaccessiblefocus attribute
-received DOM Level 1 accessiblefocus event
-
-Test accessiblefocus
-received accessiblefocus event
-
-Test accessiblescrollintoview
-received DOM Level 1 accessiblescrollintoview event
-received accessiblescrollintoview event
-
-Test accessiblecontextmenu
-received DOM Level 1 accessiblecontextmenu event
-received accessiblecontextmenu event
-
-Test accessibleselect
-received DOM Level 1 accessibleselect event
-received accessibleselect event
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/mac/AOM-events-all.html b/LayoutTests/accessibility/mac/AOM-events-all.html
deleted file mode 100644 (file)
index 9e41280..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-<!DOCTYPE html>
-<html>
-<body id="body">
-<script src="../../resources/js-test-pre.js"></script>
-<div id="content">
-
-<input type="range" min="0" max="100" value="25" step="25" id="slider" onaccessibleincrement="incrementEventCallback(true)" onaccessibledecrement="decrementEventCallback(true)"/>
-<input type="text" id="input" onaccessiblefocus="focusEventCallback(true)">
-<button id="button" onaccessiblescrollintoview="scrollIntoViewEventCallback(true)">button</button>
-
-<div id="combo" tabindex=0 role="combobox" aria-expanded="false" aria-label="Test" onaccessiblecontextmenu="contextMenuEventCallback(true)">
-<div role="listbox">
-<div role="option">option 1</div>
-</div></div>
-
-<select id="group" multiple="multiple">
-    <option id="option" onaccessibleselect="selectEventCallback(true)">Option 1</option>
-    <option>Option 2</option>
-</select>
-
-</div>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-
-    description("This tests all accessibility events.");
-
-    if (window.accessibilityController) {
-        jsTestIsAsync = true;
-       
-        var node;
-        var axNode;
-        
-        testIncrementDecrement();
-
-        function incrementEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessibleincrement event");
-            if (domLevel1)
-                node.removeAttribute("onaccessibleincrement");
-        }
-
-        function decrementEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessibledecrement event");
-            if (domLevel1)
-                node.removeAttribute("onaccessibledecrement");
-        }
-
-        function focusEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessiblefocus event");
-            if (domLevel1) {
-                node.removeAttribute("onaccessiblefocus");
-                testFocus();
-            }
-        }
-
-        function scrollIntoViewEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessiblescrollintoview event");
-            if (domLevel1)
-                node.removeAttribute("onaccessiblescrollintoview");
-        }
-
-        function contextMenuEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessiblecontextmenu event");
-            if (domLevel1)
-                node.removeAttribute("onaccessiblecontextmenu");
-        }
-
-        function selectEventCallback(domLevel1) {
-            debug("received " + (domLevel1 ? "DOM Level 1 " : "") + "accessibleselect event");
-            if (domLevel1)
-                node.removeAttribute("onaccessibleselect");
-        }
-
-        function testIncrementDecrement() {
-            debug("\nTest accessibleincrement and accessibledecrement");
-            node = document.getElementById("slider");
-            axNode = accessibilityController.accessibleElementById("slider");
-            // DOM Level 1 events
-            axNode.increment();
-            axNode.decrement();
-            // DOM Level 2 events
-            node.onaccessibleincrement = function() {
-                incrementEventCallback();
-            };
-            node.onaccessibledecrement = function() {
-                decrementEventCallback();
-            };
-            axNode.increment();
-            axNode.decrement();
-
-            testFocusDOMLevel1();
-        }
-
-        function testFocusDOMLevel1() {
-            // takeFocus() is async so that this deserves a seperate test
-            debug("\nTest onaccessiblefocus attribute");
-            node = document.getElementById("input");
-            axNode = accessibilityController.accessibleElementById("input");
-            axNode.takeFocus();
-        }
-
-        function testFocus() {
-            debug("\nTest accessiblefocus");
-            // DOM Level 2 event
-            node = document.getElementById("input");
-            axNode = accessibilityController.accessibleElementById("input");
-
-            node.onaccessiblefocus = function() {
-                focusEventCallback();
-                testScrollIntoView();
-            };
-            axNode.takeFocus();
-        }
-
-        function testScrollIntoView() {
-            debug("\nTest accessiblescrollintoview");
-            node = document.getElementById("button");
-            axNode = accessibilityController.accessibleElementById("button");
-            // DOM Level 1 event
-            axNode.scrollToMakeVisible();
-            // DOM Level 2 event
-            node.onaccessiblescrollintoview = function() {
-                scrollIntoViewEventCallback();
-                testShowContextMenu();
-            };
-            axNode.scrollToMakeVisible();
-        }
-
-        function testShowContextMenu() {
-            debug("\nTest accessiblecontextmenu");
-            node = document.getElementById("combo");
-            axNode = accessibilityController.accessibleElementById("combo");
-            // DOM Level 1 event
-            axNode.showMenu();
-            // DOM Level 2 event
-            node.onaccessiblecontextmenu = function() {
-                contextMenuEventCallback();
-                testSelect();
-            };
-            axNode.showMenu();
-        }
-
-        function testSelect() {
-            debug("\nTest accessibleselect");
-            node = document.getElementById("option");
-            axNode = accessibilityController.accessibleElementById("group");
-            // DOM Level 1 event
-            axNode.setSelectedChildAtIndex(0);
-            // DOM Level 2 event
-            node.onaccessibleselect = function() {
-                selectEventCallback();
-                finishJSTest();
-            }
-            axNode.setSelectedChildAtIndex(0);
-        }
-
-    } else {
-        testFailed("Could not load accessibility controller");
-    }
-
-</script>
-
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/mac/AOM-events-expected.txt b/LayoutTests/accessibility/mac/AOM-events-expected.txt
deleted file mode 100644 (file)
index fc62755..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Click Click
-Click
-
-Click
-This tests accessibility-specific events.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-
-onaccessibleclick support
-PASS receivedDOMLevel1Event is true
-PASS receivedAXEvent is true
-PASS receivedFallbackEvent is true
-
-Test preventDefault
-PASS receivedAXEvent is true
-PASS receivedFallbackEvent is false
-
-Test event bubbling
-PASS receivedAXEvent is true
-
-Test event capturing and bubbling
-AX capture UL
-AX capture LI
-AX main event listener BUTTON
-AX bubble LI
-AX bubble UL
-
diff --git a/LayoutTests/accessibility/mac/AOM-events-webarea-crash-expected.txt b/LayoutTests/accessibility/mac/AOM-events-webarea-crash-expected.txt
deleted file mode 100644 (file)
index ca1f34b..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-Click
-This tests dispatching accessibility events on web area won't cause a crash.
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/LayoutTests/accessibility/mac/AOM-events-webarea-crash.html b/LayoutTests/accessibility/mac/AOM-events-webarea-crash.html
deleted file mode 100644 (file)
index 2f4736c..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-<script src="../../resources/js-test-pre.js"></script>
-</head>
-<body>
-
-<button id="button1">Click</button>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-    description("This tests dispatching accessibility events on web area won't cause a crash.");
-    if (window.accessibilityController) {
-        jsTestIsAsync = true;
-        var webArea = accessibilityController.rootElement.childAtIndex(0);
-
-        webArea.takeFocus();
-
-        // make sure we don't crash after focusing onto the web area.
-        setTimeout(function() {
-            finishJSTest();
-        }, 100);
-    }
-
-</script>
-<script src="../../resources/js-test-post.js"></script>
-</body>
-</html>
diff --git a/LayoutTests/accessibility/mac/AOM-events.html b/LayoutTests/accessibility/mac/AOM-events.html
deleted file mode 100644 (file)
index 45407ac..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-<script src="../../resources/js-test-pre.js"></script>
-<script src="../../resources/accessibility-helper.js"></script>
-</head>
-<body>
-
-<button id="button1" onaccessibleclick="accessibleclickCallback(true)">Click</button>
-<button id="button2">Click</button>
-<p id="p1">
-<button id="button3">Click</button>
-</p>
-
-<ul id="ul">
-<li id="li">
-<button id="button4">Click</button>
-</li>
-</ul>
-
-<p id="description"></p>
-<div id="console"></div>
-
-<script>
-    description("This tests accessibility-specific events.");
-    if (window.accessibilityController) {
-        var node;
-        var axNode;
-        var receivedDOMLevel1Event;
-        var receivedAXEvent;
-        var receivedFallbackEvent;
-
-        testAccessibleClick();
-        testPreventDefault();
-        testEventBubbling();
-        testEventCapturingAndBubbling();
-    }
-
-    function accessibleclickCallback(domLevel1) {
-        if (domLevel1)
-            receivedDOMLevel1Event = true;
-        else
-            receivedAXEvent = true;
-    }
-
-    function testAccessibleClickDOMLevel1() {
-        debug("\nonaccessibleclick attribute support");
-        axNode = accessibilityController.accessibleElementById("button0");
-        receivedAXEvent = false;
-        axNode.syncPress();
-        shouldBeTrue("receivedAXEvent");
-    }
-
-    function testAccessibleClick() {
-        debug("\nonaccessibleclick support");
-        node = document.getElementById("button1");
-        axNode = accessibilityController.accessibleElementById("button1");
-
-        // DOM Level 1 event
-        receiveDOMLevel1Event = false;
-        axNode.syncPress();
-        shouldBeTrue("receivedDOMLevel1Event");
-        // DOM Level 2 event
-        receivedAXEvent = false;
-        receivedFallbackEvent = false;
-        node.onaccessibleclick = function() {
-            accessibleclickCallback();
-        };
-        node.onclick = function() {
-            receivedFallbackEvent = true;
-        };
-        axNode.syncPress();
-        shouldBeTrue("receivedAXEvent");
-        shouldBeTrue("receivedFallbackEvent");
-    }
-    
-    function testPreventDefault() {
-        debug("\nTest preventDefault");
-        node = document.getElementById("button2");
-        axNode = accessibilityController.accessibleElementById("button2");
-        
-        receivedAXEvent = false;
-        receivedFallbackEvent = false;
-        node.onaccessibleclick = function(evt) {
-            receivedAXEvent = true;
-            evt.preventDefault();
-        };
-        node.onclick = function() {
-            receivedFallbackEvent = true;
-        };
-        axNode.syncPress();
-        shouldBeTrue("receivedAXEvent");
-        shouldBeFalse("receivedFallbackEvent");
-    }
-    
-    function testEventBubbling() {
-        debug("\nTest event bubbling");
-        node = document.getElementById("p1");
-        axNode = accessibilityController.accessibleElementById("button3");
-
-        node.onaccessibleclick = function() {
-            receivedAXEvent = true;
-        };
-        axNode.syncPress();
-        shouldBeTrue("receivedAXEvent");
-    }
-
-    function testEventCapturingAndBubbling() {
-        debug("\nTest event capturing and bubbling");
-        var ul = document.getElementById("ul");
-        var li = document.getElementById("li");
-        var button = document.getElementById("button4");
-        axNode = accessibilityController.accessibleElementById("button4");
-        
-        var seq = [];
-        
-        // Add event listeners to each layer
-        ul.addEventListener("accessibleclick", function() {
-            seq.push("AX capture UL");
-        }, true);
-        ul.addEventListener("accessibleclick", function() {
-            seq.push("AX bubble UL");
-        }, false);
-        li.addEventListener("accessibleclick", function() {
-            seq.push("AX capture LI");
-        }, true);
-        li.addEventListener("accessibleclick", function() {
-            seq.push("AX bubble LI");
-        }, false);
-        button.addEventListener("accessibleclick", function() {
-            seq.push("AX main event listener BUTTON");
-        }, false);
-
-        axNode.syncPress();
-        seq.forEach(function (entry) {
-            debug(entry);
-        });
-    }
-
-</script>
-<script src="../resources/js-test-post.js"></script>
-</body>
-</html>
index e852c78..8739c49 100644 (file)
@@ -149,15 +149,6 @@ PASS a["clientWidth"] is 0
 PASS a["clientHeight"] is 0
 PASS a["innerHTML"] is nerget
 PASS a["outerHTML"] is <a id="foo" href="bar">nerget</a>
-PASS a["onaccessiblecontextmenu"] is null
-PASS a["onaccessibleclick"] is null
-PASS a["onaccessibledecrement"] is null
-PASS a["onaccessibledismiss"] is null
-PASS a["onaccessiblefocus"] is null
-PASS a["onaccessibleincrement"] is null
-PASS a["onaccessiblescrollintoview"] is null
-PASS a["onaccessiblesetvalue"] is null
-PASS a["onaccessibleselect"] is null
 PASS a["oncopy"] is null
 PASS a["oncut"] is null
 PASS a["onpaste"] is null
index 1bc9126..8b7f568 100644 (file)
@@ -139,15 +139,6 @@ PASS a["clientWidth"] is 0
 PASS a["clientHeight"] is 0
 PASS a["innerHTML"] is nerget
 PASS a["outerHTML"] is <a id="foo" href="bar">nerget</a>
-PASS a["onaccessiblecontextmenu"] is null
-PASS a["onaccessibleclick"] is null
-PASS a["onaccessibledecrement"] is null
-PASS a["onaccessibledismiss"] is null
-PASS a["onaccessiblefocus"] is null
-PASS a["onaccessibleincrement"] is null
-PASS a["onaccessiblescrollintoview"] is null
-PASS a["onaccessiblesetvalue"] is null
-PASS a["onaccessibleselect"] is null
 PASS a["oncopy"] is null
 PASS a["oncut"] is null
 PASS a["onpaste"] is null
index 245f7b7..44bda27 100644 (file)
@@ -140,15 +140,6 @@ PASS a["clientWidth"] is 0
 PASS a["clientHeight"] is 0
 PASS a["innerHTML"] is nerget
 PASS a["outerHTML"] is <a id="foo" href="bar">nerget</a>
-PASS a["onaccessiblecontextmenu"] is null
-PASS a["onaccessibleclick"] is null
-PASS a["onaccessibledecrement"] is null
-PASS a["onaccessibledismiss"] is null
-PASS a["onaccessiblefocus"] is null
-PASS a["onaccessibleincrement"] is null
-PASS a["onaccessiblescrollintoview"] is null
-PASS a["onaccessiblesetvalue"] is null
-PASS a["onaccessibleselect"] is null
 PASS a["oncopy"] is null
 PASS a["oncut"] is null
 PASS a["onpaste"] is null
index 9f35b19..18511a1 100644 (file)
@@ -567,11 +567,7 @@ webkit.org/b/179775 imported/w3c/web-platform-tests/xhr/firing-events-http-no-co
 
 webkit.org/b/172044 [ Debug ] imported/w3c/web-platform-tests/IndexedDB/open-request-queue.html [ Pass Timeout ]
 
-webkit.org/b/180898 accessibility/mac/AOM-events.html [ Skip ]
-webkit.org/b/183023 accessibility/mac/AOM-events-all.html [ Skip ]
-webkit.org/b/183352 accessibility/ios-simulator/AOM-dismiss-event.html [ Skip ]
 webkit.org/b/184742 accessibility/mac/async-increment-decrement-action.html [ Skip ]
-webkit.org/b/185897 accessibility/mac/AOM-event-accessiblesetvalue.html [ Skip ]
 webkit.org/b/185897 accessibility/mac/set-value-editable-types.html [ Skip ]
 webkit.org/b/193414 accessibility/mac/relative-frame.html [ Skip ]
 
@@ -708,4 +704,4 @@ webkit.org/b/196448 [ Debug ] inspector/audit/basic.html [ Pass Timeout ]
 
 webkit.org/b/196502 media/video-background-tab-playback.html [ Pass Failure ]
 
-webkit.org/b/196915 [ Debug ] inspector/timeline/timeline-recording.html [ Pass Failure ]
\ No newline at end of file
+webkit.org/b/196915 [ Debug ] inspector/timeline/timeline-recording.html [ Pass Failure ]
index b45f911..9908289 100644 (file)
@@ -150,15 +150,6 @@ PASS a["clientWidth"] is 0
 PASS a["clientHeight"] is 0
 PASS a["innerHTML"] is nerget
 PASS a["outerHTML"] is <a id="foo" href="bar">nerget</a>
-PASS a["onaccessiblecontextmenu"] is null
-PASS a["onaccessibleclick"] is null
-PASS a["onaccessibledecrement"] is null
-PASS a["onaccessibledismiss"] is null
-PASS a["onaccessiblefocus"] is null
-PASS a["onaccessibleincrement"] is null
-PASS a["onaccessiblescrollintoview"] is null
-PASS a["onaccessiblesetvalue"] is null
-PASS a["onaccessibleselect"] is null
 PASS a["oncopy"] is null
 PASS a["oncut"] is null
 PASS a["onpaste"] is null
index a9e8e44..9088fdd 100644 (file)
@@ -138,15 +138,6 @@ PASS a["clientWidth"] is 0
 PASS a["clientHeight"] is 0
 PASS a["innerHTML"] is nerget
 PASS a["outerHTML"] is <a id="foo" href="bar">nerget</a>
-PASS a["onaccessiblecontextmenu"] is null
-PASS a["onaccessibleclick"] is null
-PASS a["onaccessibledecrement"] is null
-PASS a["onaccessibledismiss"] is null
-PASS a["onaccessiblefocus"] is null
-PASS a["onaccessibleincrement"] is null
-PASS a["onaccessiblescrollintoview"] is null
-PASS a["onaccessiblesetvalue"] is null
-PASS a["onaccessibleselect"] is null
 PASS a["oncopy"] is null
 PASS a["oncut"] is null
 PASS a["onpaste"] is null
index b840964..043fcf5 100644 (file)
@@ -1,3 +1,13 @@
+2019-04-24  chris fleizach  <cfleizach@apple.com>
+
+        AX: Remove deprecated Accessibility Object Model events
+        https://bugs.webkit.org/show_bug.cgi?id=197073
+        <rdar://problem/50027819>
+
+        Reviewed by Ryosuke Niwa.
+
+        * wtf/Platform.h:
+
 2019-04-23  Commit Queue  <commit-queue@webkit.org>
 
         Unreviewed, rolling out r244558.
index 06147ac..dea1e3b 100644 (file)
 #endif
 
 #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400) || PLATFORM(IOS) || PLATFORM(IOSMAC)
-#define ENABLE_ACCESSIBILITY_EVENTS 1
 #define HAVE_SEC_KEY_PROXY 1
 #endif
 
index cc376ad..e92b9c7 100644 (file)
@@ -542,7 +542,6 @@ set(WebCore_NON_SVG_IDL_FILES
     Modules/webvr/VRStageParameters.idl
 
     accessibility/AccessibilityRole.idl
-    accessibility/AccessibleSetValueEvent.idl
     accessibility/AriaAttributes.idl
 
     animation/Animatable.idl
index e89fb82..16abd53 100644 (file)
@@ -1,3 +1,64 @@
+2019-04-24  chris fleizach  <cfleizach@apple.com>
+
+        AX: Remove deprecated Accessibility Object Model events
+        https://bugs.webkit.org/show_bug.cgi?id=197073
+        <rdar://problem/50027819>
+
+        Reviewed by Ryosuke Niwa.
+
+        Test: accessibility/mac/replace-text-with-range.html
+
+        * DerivedSources.make:
+        * Sources.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * accessibility/AccessibilityListBoxOption.cpp:
+        (WebCore::AccessibilityListBoxOption::setSelected):
+        * accessibility/AccessibilityMediaObject.cpp:
+        (WebCore::AccessibilityMediaObject::increment):
+        (WebCore::AccessibilityMediaObject::decrement):
+        * accessibility/AccessibilityMenuListOption.cpp:
+        (WebCore::AccessibilityMenuListOption::setSelected):
+        * accessibility/AccessibilityNodeObject.cpp:
+        (WebCore::AccessibilityNodeObject::increment):
+        (WebCore::AccessibilityNodeObject::decrement):
+        * accessibility/AccessibilityObject.cpp:
+        (WebCore::AccessibilityObject::press):
+        (WebCore::AccessibilityObject::replaceTextInRange):
+        (WebCore::AccessibilityObject::scrollToMakeVisible const):
+        (WebCore::AccessibilityObject::shouldDispatchAccessibilityEvent const): Deleted.
+        (WebCore::AccessibilityObject::dispatchAccessibilityEvent const): Deleted.
+        (WebCore::AccessibilityObject::dispatchAccessibilityEventWithType const): Deleted.
+        (WebCore::AccessibilityObject::dispatchAccessibleSetValueEvent const): Deleted.
+        * accessibility/AccessibilityObject.h:
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::setFocused):
+        (WebCore::AccessibilityRenderObject::setValue):
+        * accessibility/AccessibilityScrollbar.cpp:
+        (WebCore::AccessibilityScrollbar::setValue):
+        * accessibility/AccessibilitySlider.cpp:
+        (WebCore::AccessibilitySlider::setValue):
+        * accessibility/ios/AccessibilityObjectIOS.mm:
+        (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const):
+        (WebCore::AccessibilityObject::hasAccessibleDismissEventListener const): Deleted.
+        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+        (-[WebAccessibilityObjectWrapper accessibilityPerformEscape]): Deleted.
+        (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]): Deleted.
+        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+        (-[WebAccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
+        * dom/Element.idl:
+        * dom/EventNames.h:
+        * dom/EventNames.in:
+        * html/HTMLAttributeNames.in:
+        * html/HTMLElement.cpp:
+        (WebCore::HTMLElement::createEventHandlerNameMap):
+        * page/Settings.yaml:
+        * testing/InternalSettings.cpp:
+        (WebCore::InternalSettings::Backup::Backup):
+        (WebCore::InternalSettings::Backup::restoreTo):
+        (WebCore::InternalSettings::setAccessibilityEventsEnabled): Deleted.
+        * testing/InternalSettings.h:
+        * testing/InternalSettings.idl:
+
 2019-04-23  Andy Estes  <aestes@apple.com>
 
         [iOS] QuickLook documents loaded from file: URLs should be allowed to perform same-document navigations
index 6b24a94..98158d7 100644 (file)
@@ -395,7 +395,6 @@ $(PROJECT_DIR)/Scripts/SettingsTemplates/InternalSettingsGenerated.idl.erb
 $(PROJECT_DIR)/Scripts/SettingsTemplates/Settings.cpp.erb
 $(PROJECT_DIR)/Scripts/SettingsTemplates/Settings.h.erb
 $(PROJECT_DIR)/accessibility/AccessibilityRole.idl
-$(PROJECT_DIR)/accessibility/AccessibleSetValueEvent.idl
 $(PROJECT_DIR)/accessibility/AriaAttributes.idl
 $(PROJECT_DIR)/animation/Animatable.idl
 $(PROJECT_DIR)/animation/AnimationEffect.idl
index 26b65ff..b5c6514 100644 (file)
@@ -42,8 +42,6 @@ $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAbstractWorker.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAbstractWorker.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAccessibilityRole.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAccessibilityRole.h
-$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAccessibleSetValueEvent.cpp
-$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAccessibleSetValueEvent.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAddressErrors.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAddressErrors.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSAesCbcCfbParams.cpp
index 033e64b..298d47e 100644 (file)
@@ -446,7 +446,6 @@ JS_BINDING_IDLS = \
     $(WebCore)/Modules/webvr/VRPose.idl \
     $(WebCore)/Modules/webvr/VRStageParameters.idl \
     $(WebCore)/accessibility/AccessibilityRole.idl \
-    $(WebCore)/accessibility/AccessibleSetValueEvent.idl \
     $(WebCore)/accessibility/AriaAttributes.idl \
     $(WebCore)/animation/Animatable.idl \
     $(WebCore)/animation/AnimationEffect.idl \
index 309ba47..3606acb 100644 (file)
@@ -417,7 +417,6 @@ accessibility/AccessibilityTableHeaderContainer.cpp
 accessibility/AccessibilityTableRow.cpp
 accessibility/AccessibilityTree.cpp
 accessibility/AccessibilityTreeItem.cpp
-accessibility/AccessibleSetValueEvent.cpp
 accessibility/isolatedtree/AXIsolatedTree.cpp
 accessibility/isolatedtree/AXIsolatedTreeNode.cpp
 
@@ -2489,7 +2488,6 @@ JSHTMLElementWrapperFactory.cpp
 JSAbortController.cpp
 JSAbortSignal.cpp
 JSAbstractWorker.cpp
-JSAccessibleSetValueEvent.cpp
 JSAddressErrors.cpp
 JSAesCbcCfbParams.cpp
 JSAesCtrParams.cpp
index 1e5cf9d..d5c8540 100644 (file)
                A9D248010D757E6900FDF959 /* JSDOMPluginArray.h in Headers */ = {isa = PBXBuildFile; fileRef = A9D247FD0D757E6900FDF959 /* JSDOMPluginArray.h */; };
                A9D248070D757E7D00FDF959 /* JSDOMMimeType.h in Headers */ = {isa = PBXBuildFile; fileRef = A9D248030D757E7D00FDF959 /* JSDOMMimeType.h */; };
                A9D248090D757E7D00FDF959 /* JSDOMMimeTypeArray.h in Headers */ = {isa = PBXBuildFile; fileRef = A9D248050D757E7D00FDF959 /* JSDOMMimeTypeArray.h */; };
-               A9F2E0EB20475CDE00512855 /* AccessibleSetValueEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F2E0E820475CDC00512855 /* AccessibleSetValueEvent.h */; };
                AA12DF491743DF83004DAFDF /* PlatformSpeechSynthesizerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = AAE3755D17429BCC006200C2 /* PlatformSpeechSynthesizerIOS.mm */; };
                AA21ECCD0ABF0FC6002B834C /* CSSCursorImageValue.h in Headers */ = {isa = PBXBuildFile; fileRef = AA0978EE0ABAA6E100874480 /* CSSCursorImageValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
                AA2A5ACE16A485FD00975A25 /* SpeechSynthesisVoice.h in Headers */ = {isa = PBXBuildFile; fileRef = AA2A5AC716A485D500975A25 /* SpeechSynthesisVoice.h */; };
                A9D248050D757E7D00FDF959 /* JSDOMMimeTypeArray.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSDOMMimeTypeArray.h; sourceTree = "<group>"; };
                A9EE448C210FC9AD00B6EAE6 /* AriaAttributes.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AriaAttributes.idl; sourceTree = "<group>"; };
                A9EE448F210FD69A00B6EAE6 /* AccessibilityRole.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = AccessibilityRole.idl; sourceTree = "<group>"; };
-               A9F2E0E720475CDC00512855 /* AccessibleSetValueEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibleSetValueEvent.cpp; sourceTree = "<group>"; };
-               A9F2E0E820475CDC00512855 /* AccessibleSetValueEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibleSetValueEvent.h; sourceTree = "<group>"; };
-               A9F2E0E920475CDE00512855 /* AccessibleSetValueEvent.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AccessibleSetValueEvent.idl; sourceTree = "<group>"; };
                AA0978ED0ABAA6E100874480 /* CSSCursorImageValue.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CSSCursorImageValue.cpp; sourceTree = "<group>"; };
                AA0978EE0ABAA6E100874480 /* CSSCursorImageValue.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CSSCursorImageValue.h; sourceTree = "<group>"; };
                AA2A5AB816A485D500975A25 /* DOMWindowSpeechSynthesis.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = DOMWindowSpeechSynthesis.cpp; sourceTree = "<group>"; };
                                A91C9FBD1B6586DE00AFFD54 /* AccessibilityTree.h */,
                                A91C9FC01B659A6700AFFD54 /* AccessibilityTreeItem.cpp */,
                                A91C9FC11B659A6700AFFD54 /* AccessibilityTreeItem.h */,
-                               A9F2E0E720475CDC00512855 /* AccessibleSetValueEvent.cpp */,
-                               A9F2E0E820475CDC00512855 /* AccessibleSetValueEvent.h */,
-                               A9F2E0E920475CDE00512855 /* AccessibleSetValueEvent.idl */,
                                A9EE448C210FC9AD00B6EAE6 /* AriaAttributes.idl */,
                                2981CAAF131822EC00D12F2A /* AXObjectCache.cpp */,
                                29A8121A0FBB9C1D00510293 /* AXObjectCache.h */,
                                29A812310FBB9C1D00510293 /* AccessibilityTableRow.h in Headers */,
                                A91C9FBF1B6586DE00AFFD54 /* AccessibilityTree.h in Headers */,
                                A91C9FC31B659A6700AFFD54 /* AccessibilityTreeItem.h in Headers */,
-                               A9F2E0EB20475CDE00512855 /* AccessibleSetValueEvent.h in Headers */,
                                7C5222991E1DAE1C002CB8F7 /* ActiveDOMCallback.h in Headers */,
                                7CD0BA051B8F79C9005CEBBE /* ActiveDOMCallbackMicrotask.h in Headers */,
                                E1C4DE690EA75C1E0023CCD6 /* ActiveDOMObject.h in Headers */,
index 3537287..417d624 100644 (file)
@@ -177,9 +177,6 @@ void AccessibilityListBoxOption::setSelected(bool selected)
     if (!canSetSelectedAttribute())
         return;
     
-    if (selected && dispatchAccessibilityEventWithType(AccessibilityEventType::Select))
-        return;
-    
     bool isOptionSelected = isSelected();
     if ((isOptionSelected && selected) || (!isOptionSelected && !selected))
         return;
index 4631328..250f388 100644 (file)
@@ -107,15 +107,11 @@ void AccessibilityMediaObject::toggleMute()
 
 void AccessibilityMediaObject::increment()
 {
-    if (dispatchAccessibilityEventWithType(AccessibilityEventType::Increment))
-        return;
     mediaSeek(AXSeekForward);
 }
 
 void AccessibilityMediaObject::decrement()
 {
-    if (dispatchAccessibilityEventWithType(AccessibilityEventType::Decrement))
-        return;
     mediaSeek(AXSeekBackward);
 }
 
index 3c2532b..9c167c8 100644 (file)
@@ -83,9 +83,6 @@ void AccessibilityMenuListOption::setSelected(bool selected)
     if (!canSetSelectedAttribute())
         return;
     
-    if (selected && dispatchAccessibilityEventWithType(AccessibilityEventType::Select))
-        return;
-
     downcast<HTMLOptionElement>(*m_element).setSelected(selected);
 }
 
index f81d84e..990cf0c 100644 (file)
@@ -1077,16 +1077,12 @@ void AccessibilityNodeObject::alterSliderValue(bool increase)
     
 void AccessibilityNodeObject::increment()
 {
-    if (dispatchAccessibilityEventWithType(AccessibilityEventType::Increment))
-        return;
     UserGestureIndicator gestureIndicator(ProcessingUserGesture, document());
     alterSliderValue(true);
 }
 
 void AccessibilityNodeObject::decrement()
 {
-    if (dispatchAccessibilityEventWithType(AccessibilityEventType::Decrement))
-        return;
     UserGestureIndicator gestureIndicator(ProcessingUserGesture, document());
     alterSliderValue(false);
 }
index b945596..f787fa9 100644 (file)
@@ -33,7 +33,6 @@
 #include "AccessibilityRenderObject.h"
 #include "AccessibilityScrollView.h"
 #include "AccessibilityTable.h"
-#include "AccessibleSetValueEvent.h"
 #include "Chrome.h"
 #include "ChromeClient.h"
 #include "DOMTokenList.h"
@@ -1093,14 +1092,6 @@ bool AccessibilityObject::press()
     if (hitTestElement && hitTestElement->isDescendantOf(*pressElement))
         pressElement = hitTestElement;
     
-    // dispatch accessibleclick event
-    if (auto* cache = axObjectCache()) {
-        if (auto* pressObject = cache->getOrCreate(pressElement)) {
-            if (pressObject->dispatchAccessibilityEventWithType(AccessibilityEventType::Click))
-                return true;
-        }
-    }
-    
     UserGestureIndicator gestureIndicator(ProcessingUserGesture, document);
     
     bool dispatchedTouchEvent = false;
@@ -2257,73 +2248,6 @@ const AtomicString& AccessibilityObject::getAttribute(const QualifiedName& attri
     return nullAtom();
 }
 
-bool AccessibilityObject::shouldDispatchAccessibilityEvent() const
-{
-    bool shouldDispatch = RuntimeEnabledFeatures::sharedFeatures().accessibilityObjectModelEnabled();
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    return shouldDispatch &= this->page()->settings().accessibilityEventsEnabled();
-#endif
-    return shouldDispatch;
-}
-
-bool AccessibilityObject::dispatchAccessibilityEvent(Event& event) const
-{
-    if (!shouldDispatchAccessibilityEvent())
-        return false;
-    
-    Vector<Element*> eventPath;
-    for (auto* parentObject = this; parentObject; parentObject = parentObject->parentObject()) {
-        if (parentObject->isWebArea())
-            break;
-        if (auto* parentElement = parentObject->element())
-            eventPath.append(parentElement);
-    }
-    
-    if (!eventPath.size())
-        return false;
-    
-    EventDispatcher::dispatchEvent(eventPath, event);
-    
-    // return true if preventDefault() was called, so that we don't execute the fallback behavior.
-    return event.defaultPrevented();
-}
-
-bool AccessibilityObject::dispatchAccessibilityEventWithType(AccessibilityEventType type) const
-{
-    AtomicString eventName;
-    switch (type) {
-    case AccessibilityEventType::ContextMenu:
-        eventName = eventNames().accessiblecontextmenuEvent;
-        break;
-    case AccessibilityEventType::Click:
-        eventName = eventNames().accessibleclickEvent;
-        break;
-    case AccessibilityEventType::Decrement:
-        eventName = eventNames().accessibledecrementEvent;
-        break;
-    case AccessibilityEventType::Dismiss:
-        eventName = eventNames().accessibledismissEvent;
-        break;
-    case AccessibilityEventType::Focus:
-        eventName = eventNames().accessiblefocusEvent;
-        break;
-    case AccessibilityEventType::Increment:
-        eventName = eventNames().accessibleincrementEvent;
-        break;
-    case AccessibilityEventType::ScrollIntoView:
-        eventName = eventNames().accessiblescrollintoviewEvent;
-        break;
-    case AccessibilityEventType::Select:
-        eventName = eventNames().accessibleselectEvent;
-        break;
-    default:
-        return false;
-    }
-    
-    auto event = Event::create(eventName, Event::CanBubble::Yes, Event::IsCancelable::Yes);
-    return dispatchAccessibilityEvent(event);
-}
-    
 bool AccessibilityObject::replaceTextInRange(const String& replacementString, const PlainTextRange& range)
 {
     if (!renderer() || !is<Element>(node()))
@@ -2351,14 +2275,6 @@ bool AccessibilityObject::replaceTextInRange(const String& replacementString, co
 
     return false;
 }
-    
-bool AccessibilityObject::dispatchAccessibleSetValueEvent(const String& value) const
-{
-    if (!canSetValueAttribute())
-        return false;
-    auto event = AccessibleSetValueEvent::create(eventNames().accessiblesetvalueEvent, value);
-    return dispatchAccessibilityEvent(event);
-}
 
 // Lacking concrete evidence of orientation, horizontal means width > height. vertical is height > width;
 AccessibilityOrientation AccessibilityObject::orientation() const
@@ -3116,9 +3032,6 @@ void AccessibilityObject::scrollToMakeVisible() const
 
 void AccessibilityObject::scrollToMakeVisible(const ScrollRectToVisibleOptions& options) const
 {
-    if (dispatchAccessibilityEventWithType(AccessibilityEventType::ScrollIntoView))
-        return;
-
     if (isScrollView() && parentObject())
         parentObject()->scrollToMakeVisible();
 
index bcc31e2..2eab8b0 100644 (file)
@@ -96,17 +96,6 @@ enum class AccessibilityTextSource {
     Subtitle,
     Action,
 };
-
-enum class AccessibilityEventType {
-    ContextMenu,
-    Click,
-    Decrement,
-    Dismiss,
-    Focus,
-    Increment,
-    ScrollIntoView,
-    Select,
-};
     
 struct AccessibilityText {
     String text;
@@ -780,11 +769,6 @@ public:
     const AtomicString& getAttribute(const QualifiedName&) const;
     bool hasTagName(const QualifiedName&) const;
     
-    bool shouldDispatchAccessibilityEvent() const;
-    bool dispatchAccessibilityEvent(Event&) const;
-    bool dispatchAccessibilityEventWithType(AccessibilityEventType) const;
-    bool dispatchAccessibleSetValueEvent(const String&) const;
-
     virtual VisiblePositionRange visiblePositionRange() const { return VisiblePositionRange(); }
     virtual VisiblePositionRange visiblePositionRangeForLine(unsigned) const { return VisiblePositionRange(); }
     
@@ -991,7 +975,6 @@ public:
     int accessibilityPasswordFieldLength();
     bool hasTouchEventListener() const;
     bool isInputTypePopupButton() const;
-    bool hasAccessibleDismissEventListener() const;
 #endif
     
     // allows for an AccessibilityObject to update its render tree or perform
index 985c6a5..0da4f27 100644 (file)
@@ -1748,9 +1748,6 @@ bool AccessibilityRenderObject::isFocused() const
 
 void AccessibilityRenderObject::setFocused(bool on)
 {
-    if (on && dispatchAccessibilityEventWithType(AccessibilityEventType::Focus))
-        return;
-    
     if (!canSetFocusAttribute())
         return;
     
@@ -1801,8 +1798,6 @@ void AccessibilityRenderObject::setValue(const String& string)
 {
     if (!m_renderer || !is<Element>(m_renderer->node()))
         return;
-    if (dispatchAccessibleSetValueEvent(string))
-        return;
     
     Element& element = downcast<Element>(*m_renderer->node());
     RenderObject& renderer = *m_renderer;
index 32eea2c..c08916a 100644 (file)
@@ -98,8 +98,6 @@ void AccessibilityScrollbar::setValue(float value)
         return;
     
     float newValue = value * m_scrollbar->maximum();
-    if (dispatchAccessibleSetValueEvent(String::numberToStringFixedPrecision(newValue)))
-        return;
     m_scrollbar->scrollableArea().scrollToOffsetWithoutAnimation(m_scrollbar->orientation(), newValue);
 }
     
index 50243ec..12229dc 100644 (file)
@@ -128,9 +128,6 @@ float AccessibilitySlider::minValueForRange() const
 
 void AccessibilitySlider::setValue(const String& value)
 {
-    if (dispatchAccessibleSetValueEvent(value))
-        return;
-
     HTMLInputElement* input = inputElement();
     
     if (input->value() == value)
diff --git a/Source/WebCore/accessibility/AccessibleSetValueEvent.idl b/Source/WebCore/accessibility/AccessibleSetValueEvent.idl
deleted file mode 100644 (file)
index 72a1cc2..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2018 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.
- */
-
-[
-    EnabledAtRuntime=AccessibilityObjectModel,
-    NoInterfaceObject,
-] interface AccessibleSetValueEvent : Event {
-    readonly attribute DOMString value;
-};
index 404e9e0..bd0c40e 100644 (file)
@@ -74,15 +74,6 @@ AccessibilityObjectInclusion AccessibilityObject::accessibilityPlatformIncludesO
 {
     return AccessibilityObjectInclusion::DefaultBehavior;
 }
-    
-bool AccessibilityObject::hasAccessibleDismissEventListener() const
-{
-    for (auto* node = this->node(); node; node = node->parentNode()) {
-        if (node->hasEventListeners(eventNames().accessibledismissEvent))
-            return true;
-    }
-    return false;
-}
 
 bool AccessibilityObject::hasTouchEventListener() const
 {
index 8ecfc8c..5024e68 100644 (file)
@@ -1518,17 +1518,6 @@ static void appendStringToResult(NSMutableString *result, NSString *string)
     return [self convertRectToSpace:floatRect space:AccessibilityConversionSpace::Screen].origin;
 }
 
-- (BOOL)accessibilityPerformEscape
-{
-    if (![self _prepareAccessibilityCall])
-        return NO;
-    
-    m_object->dispatchAccessibilityEventWithType(AccessibilityEventType::Dismiss);
-    
-    // Return whether a listener received this event so it prevents other callers up the hierarchy chain.
-    return m_object->shouldDispatchAccessibilityEvent() && m_object->hasAccessibleDismissEventListener();
-}
-
 - (BOOL)_accessibilityScrollToVisible
 {
     if (![self _prepareAccessibilityCall])
@@ -1995,14 +1984,6 @@ static RenderObject* rendererForView(WAKView* view)
     return (NSArray *)convertToNSArray(results);
 }
 
-- (void)accessibilityElementDidBecomeFocused
-{
-    if (![self _prepareAccessibilityCall])
-        return;
-    
-    m_object->dispatchAccessibilityEventWithType(AccessibilityEventType::Focus);
-}
-
 - (void)accessibilityModifySelection:(TextGranularity)granularity increase:(BOOL)increase
 {
     if (![self _prepareAccessibilityCall])
index 38ca442..1ddf2a6 100644 (file)
@@ -3730,9 +3730,6 @@ ALLOW_DEPRECATED_DECLARATIONS_END
 
 - (void)accessibilityPerformShowMenuAction
 {
-    if (m_object && m_object->dispatchAccessibilityEventWithType(AccessibilityEventType::ContextMenu))
-        return;
-    
     if (m_object->roleValue() == AccessibilityRole::ComboBox)
         m_object->setIsExpanded(true);
     else {
index 36d36ac..4c5550a 100644 (file)
 
     // Non standard event handler (https://developer.apple.com/reference/webkitjs/element/1629580-onwebkitplaybacktargetavailabili).
     [NotEnumerable, Conditional=WIRELESS_PLAYBACK_TARGET] attribute EventHandler onwebkitplaybacktargetavailabilitychanged;
-
-    // Accessibility events.
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessiblecontextmenu;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessibleclick;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessibledecrement;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessibledismiss;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessiblefocus;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessibleincrement;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessiblescrollintoview;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessiblesetvalue;
-    [EnabledAtRuntime=AccessibilityObjectModel] attribute EventHandler onaccessibleselect;
 };
 
 dictionary ShadowRootInit {
index d2867b9..882317a 100644 (file)
@@ -51,15 +51,6 @@ namespace WebCore {
     macro(DOMNodeRemovedFromDocument) \
     macro(DOMSubtreeModified) \
     macro(abort) \
-    macro(accessiblecontextmenu) \
-    macro(accessibleclick) \
-    macro(accessibledecrement) \
-    macro(accessibledismiss) \
-    macro(accessiblefocus) \
-    macro(accessibleincrement) \
-    macro(accessiblescrollintoview) \
-    macro(accessiblesetvalue) \
-    macro(accessibleselect) \
     macro(activate) \
     macro(active) \
     macro(addsourcebuffer) \
index 5548cfb..456ea04 100644 (file)
@@ -81,5 +81,4 @@ OverconstrainedErrorEvent conditional=MEDIA_STREAM
 MediaEncryptedEvent conditional=ENCRYPTED_MEDIA
 MediaKeyMessageEvent conditional=ENCRYPTED_MEDIA
 VRDisplayEvent
-AccessibleSetValueEvent
 PointerEvent conditional=POINTER_EVENTS
index 889c380..606cfb9 100644 (file)
@@ -193,15 +193,6 @@ novalidate
 nowrap
 object
 onabort
-onaccessiblecontextmenu
-onaccessibleclick
-onaccessibledecrement
-onaccessibledismiss
-onaccessiblefocus
-onaccessibleincrement
-onaccessiblescrollintoview
-onaccessiblesetvalue
-onaccessibleselect
 onafterprint
 onanimationstart
 onanimationiteration
index 17cec88..6163c3c 100644 (file)
@@ -227,15 +227,6 @@ HTMLElement::EventHandlerNameMap HTMLElement::createEventHandlerNameMap()
 
     static const QualifiedName* const table[] = {
         &onabortAttr.get(),
-        &onaccessiblecontextmenuAttr.get(),
-        &onaccessibleclickAttr.get(),
-        &onaccessibledecrementAttr.get(),
-        &onaccessibledismissAttr.get(),
-        &onaccessiblefocusAttr.get(),
-        &onaccessibleincrementAttr.get(),
-        &onaccessiblescrollintoviewAttr.get(),
-        &onaccessiblesetvalueAttr.get(),
-        &onaccessibleselectAttr.get(),
         &onanimationendAttr.get(),
         &onanimationiterationAttr.get(),
         &onanimationstartAttr.get(),
index d45338d..e3e09ee 100644 (file)
@@ -801,10 +801,6 @@ clientCoordinatesRelativeToLayoutViewport:
   initial: false
   onChange: setNeedsRecalcStyleInAllFrames
 
-accessibilityEventsEnabled:
-  initial: true
-  conditional: ACCESSIBILITY_EVENTS
-
 incompleteImageBorderEnabled:
   initial: false
 
index 4afbd44..76f6683 100644 (file)
@@ -95,9 +95,6 @@ InternalSettings::Backup::Backup(Settings& settings)
     , m_deferredCSSParserEnabled(settings.deferredCSSParserEnabled())
     , m_inputEventsEnabled(settings.inputEventsEnabled())
     , m_incompleteImageBorderEnabled(settings.incompleteImageBorderEnabled())
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    , m_accessibilityEventsEnabled(settings.accessibilityEventsEnabled())
-#endif
     , m_shouldDeactivateAudioSession(PlatformMediaSessionManager::shouldDeactivateAudioSession())
     , m_userInterfaceDirectionPolicy(settings.userInterfaceDirectionPolicy())
     , m_systemLayoutDirection(settings.systemLayoutDirection())
@@ -205,9 +202,6 @@ void InternalSettings::Backup::restoreTo(Settings& settings)
     settings.setFrameFlattening(m_frameFlattening);
     settings.setIncompleteImageBorderEnabled(m_incompleteImageBorderEnabled);
     PlatformMediaSessionManager::setShouldDeactivateAudioSession(m_shouldDeactivateAudioSession);
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    settings.setAccessibilityEventsEnabled(m_accessibilityEventsEnabled);
-#endif
 
 #if ENABLE(INDEXED_DATABASE_IN_WORKERS)
     RuntimeEnabledFeatures::sharedFeatures().setIndexedDBWorkersEnabled(m_indexedDBWorkersEnabled);
@@ -890,18 +884,6 @@ ExceptionOr<void> InternalSettings::setCustomPasteboardDataEnabled(bool enabled)
     return { };
 }
 
-ExceptionOr<void> InternalSettings::setAccessibilityEventsEnabled(bool enabled)
-{
-    if (!m_page)
-        return Exception { InvalidAccessError };
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    settings().setAccessibilityEventsEnabled(enabled);
-#else
-    UNUSED_PARAM(enabled);
-#endif
-    return { };
-}
-
 ExceptionOr<void> InternalSettings::setIncompleteImageBorderEnabled(bool enabled)
 {
     if (!m_page)
index 46cb844..c178880 100644 (file)
@@ -101,7 +101,6 @@ public:
     ExceptionOr<void> setShouldMockBoldSystemFontForAccessibility(bool);
     ExceptionOr<void> setShouldManageAudioSessionCategory(bool);
     ExceptionOr<void> setCustomPasteboardDataEnabled(bool);
-    ExceptionOr<void> setAccessibilityEventsEnabled(bool);
     ExceptionOr<void> setIncompleteImageBorderEnabled(bool);
 
     using FrameFlatteningValue = FrameFlattening;
@@ -195,9 +194,6 @@ private:
         bool m_deferredCSSParserEnabled;
         bool m_inputEventsEnabled;
         bool m_incompleteImageBorderEnabled;
-#if ENABLE(ACCESSIBILITY_EVENTS)
-        bool m_accessibilityEventsEnabled;
-#endif
         bool m_shouldDeactivateAudioSession;
         UserInterfaceDirectionPolicy m_userInterfaceDirectionPolicy;
         TextDirection m_systemLayoutDirection;
index 20f8916..3109844 100644 (file)
@@ -114,7 +114,6 @@ enum FontLoadTimingOverride { "Block", "Swap", "Failure" };
 
     [EnabledAtRuntime=WebAnimations] boolean webAnimationsCSSIntegrationEnabled();
 
-    [MayThrowException] void setAccessibilityEventsEnabled(boolean enabled);
     void setShouldDeactivateAudioSession(boolean shouldDeactivate);
 };
 
index 6b7bb25..a1dee46 100644 (file)
@@ -1,3 +1,27 @@
+2019-04-24  chris fleizach  <cfleizach@apple.com>
+
+        AX: Remove deprecated Accessibility Object Model events
+        https://bugs.webkit.org/show_bug.cgi?id=197073
+        <rdar://problem/50027819>
+
+        Reviewed by Ryosuke Niwa.
+
+        * Platform/spi/ios/AccessibilitySupportSPI.h:
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _initializeWithConfiguration:]):
+        (-[WKWebView dealloc]):
+        (accessibilityEventsEnabledChangedCallback): Deleted.
+        (-[WKWebView _updateAccessibilityEventsEnabled]): Deleted.
+        * UIProcess/API/Cocoa/WKWebViewInternal.h:
+        * UIProcess/Cocoa/WKFullKeyboardAccessWatcher.mm:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::updateAccessibilityEventsEnabled): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::updateAccessibilityEventsEnabled): Deleted.
+        * WebProcess/WebPage/WebPage.h:
+        * WebProcess/WebPage/WebPage.messages.in:
+
 2019-04-23  John Wilander  <wilander@apple.com>
 
         Move Ad Click Attribution from internal feature to experimental feature
index 3ff0439..aabec77 100644 (file)
@@ -44,11 +44,6 @@ extern Boolean _AXSApplicationAccessibilityEnabled();
 extern CFStringRef kAXSApplicationAccessibilityEnabledNotification;
 #endif
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-extern CFStringRef kAXSWebAccessibilityEventsEnabledNotification;
-extern Boolean _AXSWebAccessibilityEventsEnabled();
-#endif
-
 #if PLATFORM(IOS_FAMILY) && ENABLE(FULL_KEYBOARD_ACCESS)
 extern CFStringRef kAXSFullKeyboardAccessEnabledNotification;
 extern Boolean _AXSFullKeyboardAccessEnabled();
index 23dbc7e..86f5708 100644 (file)
@@ -200,11 +200,6 @@ static const Seconds delayBeforeNoVisibleContentsRectsLogging = 1_s;
 #endif // HAVE(TOUCH_BAR)
 #endif // PLATFORM(MAC)
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-#import "AccessibilitySupportSPI.h"
-#import <wtf/darwin/WeakLinking.h>
-#endif
-
 #if PLATFORM(MAC) && ENABLE(DRAG_SUPPORT)
 
 @interface WKWebView () <NSFilePromiseProviderDelegate, NSDraggingSource>
@@ -750,14 +745,6 @@ static void validate(WKWebViewConfiguration *configuration)
     _impl->setRequiresUserActionForEditingControlsManager([configuration _requiresUserActionForEditingControlsManager]);
 #endif
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    // Check _AXSWebAccessibilityEventsEnabled here to avoid compiler optimizing
-    // out the null check of kAXSWebAccessibilityEventsEnabledNotification.
-    if (!isNullFunctionPointer(_AXSWebAccessibilityEventsEnabled))
-        CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), (__bridge const void *)(self), accessibilityEventsEnabledChangedCallback, kAXSWebAccessibilityEventsEnabledNotification, 0, CFNotificationSuspensionBehaviorDeliverImmediately);
-    [self _updateAccessibilityEventsEnabled];
-#endif
-
     if (NSString *applicationNameForUserAgent = configuration.applicationNameForUserAgent)
         _page->setApplicationNameForUserAgent(applicationNameForUserAgent);
 
@@ -881,10 +868,6 @@ static void validate(WKWebViewConfiguration *configuration)
     CFNotificationCenterRemoveObserver(CFNotificationCenterGetDarwinNotifyCenter(), (__bridge const void *)(self), (CFStringRef)[NSString stringWithUTF8String:kGSEventHardwareKeyboardAvailabilityChangedNotification], nullptr);
 #endif
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    CFNotificationCenterRemoveObserver(CFNotificationCenterGetDarwinNotifyCenter(), (__bridge const void *)(self), nullptr, nullptr);
-#endif
-
     pageToViewMap().remove(_page.get());
 
     [super dealloc];
@@ -3473,23 +3456,6 @@ static void hardwareKeyboardAvailabilityChangedCallback(CFNotificationCenterRef,
 
 #endif // PLATFORM(IOS_FAMILY)
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-
-static void accessibilityEventsEnabledChangedCallback(CFNotificationCenterRef, void* observer, CFStringRef, const void*, CFDictionaryRef)
-{
-    ASSERT(observer);
-    WKWebView *webview = (__bridge WKWebView *)observer;
-    [webview _updateAccessibilityEventsEnabled];
-}
-
-- (void)_updateAccessibilityEventsEnabled
-{
-    if (!isNullFunctionPointer(_AXSWebAccessibilityEventsEnabled))
-        _page->updateAccessibilityEventsEnabled(_AXSWebAccessibilityEventsEnabled());
-}
-
-#endif
-
 #pragma mark OS X-specific methods
 
 #if PLATFORM(MAC)
index f013d8a..36c6818 100644 (file)
@@ -175,10 +175,6 @@ struct PrintInfo;
 #include <WebKitAdditions/WKWebViewInternalAdditions.h>
 #endif
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-- (void)_updateAccessibilityEventsEnabled;
-#endif
-
 #if ENABLE(ATTACHMENT_ELEMENT)
 - (void)_didRemoveAttachment:(API::Attachment&)attachment;
 - (void)_didInsertAttachment:(API::Attachment&)attachment withSource:(NSString *)source;
index 5d13fb0..be0cf17 100644 (file)
 
 #import "WebProcessPool.h"
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-#import "AccessibilitySupportSPI.h"
-#endif
-
 #if PLATFORM(MAC)
 static NSString * const KeyboardUIModeDidChangeNotification = @"com.apple.KeyboardUIModeDidChange";
 static const CFStringRef AppleKeyboardUIMode = CFSTR("AppleKeyboardUIMode");
index 18c33bd..2547617 100644 (file)
@@ -3244,16 +3244,6 @@ void WebPageProxy::accessibilitySettingsDidChange()
     m_process->send(Messages::WebPage::AccessibilitySettingsDidChange(), m_pageID);
 }
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-void WebPageProxy::updateAccessibilityEventsEnabled(bool enabled)
-{
-    if (!hasRunningProcess())
-        return;
-
-    m_process->send(Messages::WebPage::UpdateAccessibilityEventsEnabled(enabled), m_pageID);
-}
-#endif
-
 void WebPageProxy::setUseFixedLayout(bool fixed)
 {
     // This check is fine as the value is initialized in the web
index c557384..2413954 100644 (file)
@@ -878,9 +878,6 @@ public:
     void setCustomDeviceScaleFactor(float);
     void windowScreenDidChange(WebCore::PlatformDisplayID);
     void accessibilitySettingsDidChange();
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    void updateAccessibilityEventsEnabled(bool);
-#endif
 
     void setUseFixedLayout(bool);
     void setFixedLayoutSize(const WebCore::IntSize&);
index bcbeb46..4ee6b88 100644 (file)
@@ -1998,13 +1998,6 @@ void WebPage::accessibilitySettingsDidChange()
     m_page->accessibilitySettingsDidChange();
 }
 
-#if ENABLE(ACCESSIBILITY_EVENTS)
-void WebPage::updateAccessibilityEventsEnabled(bool enabled)
-{
-    m_page->settings().setAccessibilityEventsEnabled(enabled);
-}
-#endif
-
 void WebPage::setUseFixedLayout(bool fixed)
 {
     // Do not overwrite current settings if initially setting it to false.
index 6a92196..4b25b5c 100644 (file)
@@ -473,9 +473,6 @@ public:
     void clearHistory();
 
     void accessibilitySettingsDidChange();
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    void updateAccessibilityEventsEnabled(bool);
-#endif
 
     void scalePage(double scale, const WebCore::IntPoint& origin);
     void scalePageInViewCoordinates(double scale, WebCore::IntPoint centerInViewCoordinates);
index 80280f1..3ff4e40 100644 (file)
@@ -250,9 +250,6 @@ messages -> WebPage LegacyReceiver {
     WindowScreenDidChange(uint32_t displayID)
 
     AccessibilitySettingsDidChange()
-#if ENABLE(ACCESSIBILITY_EVENTS)
-    UpdateAccessibilityEventsEnabled(bool enabled)
-#endif
 
     ScalePage(double scale, WebCore::IntPoint origin)
     ScalePageInViewCoordinates(double scale, WebCore::IntPoint centerInViewCoordinates)