⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 204071 in webkit


Ignore:
Timestamp:
Aug 2, 2016, 11:16:04 PM (10 years ago)
Author:
bshafiei@apple.com
Message:

Merge r203955. rdar://problem/27629346

Location:
branches/safari-602-branch
Files:
2 added
9 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-602-branch/LayoutTests/ChangeLog

    r204068 r204071  
     12016-08-02  Babak Shafiei  <bshafiei@apple.com>
     2
     3        Merge r203955. rdar://problem/27629346
     4
     5    2016-07-31  Nan Wang  <n_wang@apple.com>
     6
     7            AX: Add a check for touch event listener on iOS accessibility object
     8            https://bugs.webkit.org/show_bug.cgi?id=160388
     9
     10            Reviewed by Chris Fleizach.
     11
     12            * accessibility/ios-simulator/has-touch-event-listener-expected.txt: Added.
     13            * accessibility/ios-simulator/has-touch-event-listener.html: Added.
     14
    1152016-08-02  Babak Shafiei  <bshafiei@apple.com>
    216
  • branches/safari-602-branch/Source/WebCore/ChangeLog

    r204069 r204071  
     12016-08-02  Babak Shafiei  <bshafiei@apple.com>
     2
     3        Merge r203955. rdar://problem/27629346
     4
     5    2016-07-31  Nan Wang  <n_wang@apple.com>
     6
     7            AX: Add a check for touch event listener on iOS accessibility object
     8            https://bugs.webkit.org/show_bug.cgi?id=160388
     9
     10            Reviewed by Chris Fleizach.
     11
     12            dispatchTouchEvent() is not working correctly within AXPress() sometimes. Need to
     13            investigate it more in the future. Now, adding a check for the touch event listener
     14            on the object's node so that iOS can handle dispatching the touch event instead.
     15
     16            Test: accessibility/ios-simulator/has-touch-event-listener.html
     17
     18            * accessibility/AccessibilityObject.h:
     19            * accessibility/ios/AccessibilityObjectIOS.mm:
     20            (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
     21            (WebCore::AccessibilityObject::hasTouchEventListener):
     22            * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
     23            (appendStringToResult):
     24            (-[WebAccessibilityObjectWrapper _accessibilityHasTouchEventListener]):
     25            (-[WebAccessibilityObjectWrapper _accessibilityValueIsAutofilled]):
     26
    1272016-08-02  Babak Shafiei  <bshafiei@apple.com>
    228
  • branches/safari-602-branch/Source/WebCore/accessibility/AccessibilityObject.cpp

    r203877 r204071  
    923923    UserGestureIndicator gestureIndicator(ProcessingUserGesture, document);
    924924   
     925    // FIXME: dispatchTouchEvent() is not dispatching the touch event correctly.
    925926    bool dispatchedTouchEvent = dispatchTouchEvent();
    926927    if (!dispatchedTouchEvent)
  • branches/safari-602-branch/Source/WebCore/accessibility/AccessibilityObject.h

    r203877 r204071  
    10411041#if PLATFORM(IOS)
    10421042    int accessibilityPasswordFieldLength();
     1043    bool hasTouchEventListener() const;
    10431044#endif
    10441045   
  • branches/safari-602-branch/Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm

    r174898 r204071  
    2727#import "AccessibilityObject.h"
    2828#import "AccessibilityRenderObject.h"
     29#import "EventNames.h"
    2930#import "HTMLInputElement.h"
    3031#import "RenderObject.h"
     
    8182    return DefaultBehavior;
    8283}
    83    
     84
     85bool AccessibilityObject::hasTouchEventListener() const
     86{
     87    for (Node* node = this->node(); node; node = node->parentNode()) {
     88        if (node->hasEventListeners(eventNames().touchstartEvent) || node->hasEventListeners(eventNames().touchendEvent))
     89            return true;
     90    }
     91    return false;
     92}
     93
    8494} // WebCore
    8595
  • branches/safari-602-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm

    r203575 r204071  
    950950}
    951951
     952- (BOOL)_accessibilityHasTouchEventListener
     953{
     954    if (![self _prepareAccessibilityCall])
     955        return NO;
     956   
     957    return m_object->hasTouchEventListener();
     958}
     959
    952960- (BOOL)_accessibilityValueIsAutofilled
    953961{
  • branches/safari-602-branch/Tools/ChangeLog

    r203970 r204071  
     12016-08-02  Babak Shafiei  <bshafiei@apple.com>
     2
     3        Merge r203955. rdar://problem/27629346
     4
     5    2016-07-31  Nan Wang  <n_wang@apple.com>
     6
     7            AX: Add a check for touch event listener on iOS accessibility object
     8            https://bugs.webkit.org/show_bug.cgi?id=160388
     9
     10            Reviewed by Chris Fleizach.
     11
     12            * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
     13            (AccessibilityUIElement::boolAttributeValue):
     14            * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
     15            (WTR::AccessibilityUIElement::boolAttributeValue):
     16
    1172016-07-31  Babak Shafiei  <bshafiei@apple.com>
    218
  • branches/safari-602-branch/Tools/DumpRenderTree/ios/AccessibilityUIElementIOS.mm

    r201568 r204071  
    9696- (UIAccessibilityTraits)_axContainedByFieldsetTrait;
    9797- (id)_accessibilityFieldsetAncestor;
     98- (BOOL)_accessibilityHasTouchEventListener;
    9899
    99100// TextMarker related
     
    668669bool AccessibilityUIElement::boolAttributeValue(JSStringRef attribute)
    669670{
     671    if (JSStringIsEqualToUTF8CString(attribute, "AXHasTouchEventListener"))
     672        return [m_element _accessibilityHasTouchEventListener];
    670673    return false;
    671674}
  • branches/safari-602-branch/Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm

    r201568 r204071  
    7373- (UIAccessibilityTraits)_axContainedByFieldsetTrait;
    7474- (id)_accessibilityFieldsetAncestor;
     75- (BOOL)_accessibilityHasTouchEventListener;
    7576
    7677// TextMarker related
     
    380381bool AccessibilityUIElement::boolAttributeValue(JSStringRef attribute)
    381382{
     383    if (JSStringIsEqualToUTF8CString(attribute, "AXHasTouchEventListener"))
     384        return [m_element _accessibilityHasTouchEventListener];
    382385    return false;
    383386}
Note: See TracChangeset for help on using the changeset viewer.