AX: Add a check for touch event listener on iOS accessibility object
authorn_wang@apple.com <n_wang@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 31 Jul 2016 20:02:54 +0000 (20:02 +0000)
committern_wang@apple.com <n_wang@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 31 Jul 2016 20:02:54 +0000 (20:02 +0000)
commit9a41f1d884c9613d1d404a9c810e468f978fedaf
treec28e23c039241598bd217b5975deb269bbef126e
parent71ec050c060010307e1cc82ec1c0c3b058f3e0e9
AX: Add a check for touch event listener on iOS accessibility object
https://bugs.webkit.org/show_bug.cgi?id=160388

Reviewed by Chris Fleizach.

Source/WebCore:

dispatchTouchEvent() is not working correctly within AXPress() sometimes. Need to
investigate it more in the future. Now, adding a check for the touch event listener
on the object's node so that iOS can handle dispatching the touch event instead.

Test: accessibility/ios-simulator/has-touch-event-listener.html

* accessibility/AccessibilityObject.h:
* accessibility/ios/AccessibilityObjectIOS.mm:
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
(WebCore::AccessibilityObject::hasTouchEventListener):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(appendStringToResult):
(-[WebAccessibilityObjectWrapper _accessibilityHasTouchEventListener]):
(-[WebAccessibilityObjectWrapper _accessibilityValueIsAutofilled]):

Tools:

* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::boolAttributeValue):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::boolAttributeValue):

LayoutTests:

* accessibility/ios-simulator/has-touch-event-listener-expected.txt: Added.
* accessibility/ios-simulator/has-touch-event-listener.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@203955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/accessibility/ios-simulator/has-touch-event-listener-expected.txt [new file with mode: 0644]
LayoutTests/accessibility/ios-simulator/has-touch-event-listener.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/accessibility/AccessibilityObject.cpp
Source/WebCore/accessibility/AccessibilityObject.h
Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm
Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm
Tools/ChangeLog
Tools/DumpRenderTree/ios/AccessibilityUIElementIOS.mm
Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm