Changeset 232326 in webkit


Ignore:
Timestamp:
May 30, 2018 6:21:15 PM (6 years ago)
Author:
Chris Fleizach
Message:

AX: Expose link rel type to voiceover
https://bugs.webkit.org/show_bug.cgi?id=186084
<rdar://problem/40640871>

Reviewed by Sam Weinig.

Source/WebCore:

Make the link rel attribute available to accessibility clients.

Test: accessibility/mac/linkrel.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::linkRelValue const):

  • accessibility/AccessibilityObject.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityLinkRelationshipType]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

  • accessibility/image-link-expected.txt:
  • accessibility/image-map2-expected.txt:
  • accessibility/mac/document-links-expected.txt:
  • accessibility/mac/linkrel-expected.txt: Added.
  • accessibility/mac/linkrel.html: Added.
Location:
trunk
Files:
2 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r232324 r232326  
     12018-05-30  Chris Fleizach  <cfleizach@apple.com>
     2
     3        AX: Expose link rel type to voiceover
     4        https://bugs.webkit.org/show_bug.cgi?id=186084
     5        <rdar://problem/40640871>
     6
     7        Reviewed by Sam Weinig.
     8
     9        * accessibility/image-link-expected.txt:
     10        * accessibility/image-map2-expected.txt:
     11        * accessibility/mac/document-links-expected.txt:
     12        * accessibility/mac/linkrel-expected.txt: Added.
     13        * accessibility/mac/linkrel.html: Added.
     14
    1152018-05-30  Ryan Haddad  <ryanhaddad@apple.com>
    216
  • trunk/LayoutTests/accessibility/image-link-expected.txt

    r198356 r232326  
    3333AXURL: http://www.wowhead.com/?item=33924
    3434AXAccessKey: (null)
     35AXLinkRelationshipType:
    3536AXElementBusy: 0
    3637
     
    6667AXURL: LayoutTests/accessibility/resources/cake.png
    6768AXAccessKey: (null)
     69AXLinkRelationshipType:
    6870AXElementBusy: 0
    6971
  • trunk/LayoutTests/accessibility/image-map2-expected.txt

    r198356 r232326  
    6060AXURL: http://www.apple.com/
    6161AXAccessKey: (null)
     62AXLinkRelationshipType:
    6263AXElementBusy: 0
    6364AXPath: <AXLink>
     
    9394AXURL: http://www.apple.com/
    9495AXAccessKey: (null)
     96AXLinkRelationshipType:
    9597AXElementBusy: 0
    9698AXPath: <AXLink>
  • trunk/LayoutTests/accessibility/mac/document-links-expected.txt

    r198356 r232326  
    3030AXURL: http://www.apple.com/
    3131AXAccessKey: (null)
     32AXLinkRelationshipType:
    3233AXElementBusy: 0
    3334AXPath: <AXLink>
     
    6364AXURL: http://www.apple.com/
    6465AXAccessKey: (null)
     66AXLinkRelationshipType:
    6567AXElementBusy: 0
    6668AXPath: <AXLink>
     
    9698AXURL: http://webkit.org/
    9799AXAccessKey: (null)
     100AXLinkRelationshipType:
    98101AXElementBusy: 0
    99102
     
    128131AXURL: LayoutTests/accessibility/mac/document-links.html#asdf
    129132AXAccessKey: (null)
     133AXLinkRelationshipType:
    130134AXElementBusy: 0
    131135
  • trunk/Source/WebCore/ChangeLog

    r232323 r232326  
     12018-05-30  Chris Fleizach  <cfleizach@apple.com>
     2
     3        AX: Expose link rel type to voiceover
     4        https://bugs.webkit.org/show_bug.cgi?id=186084
     5        <rdar://problem/40640871>
     6
     7        Reviewed by Sam Weinig.
     8
     9        Make the link rel attribute available to accessibility clients.
     10
     11        Test: accessibility/mac/linkrel.html
     12
     13        * accessibility/AccessibilityObject.cpp:
     14        (WebCore::AccessibilityObject::linkRelValue const):
     15        * accessibility/AccessibilityObject.h:
     16        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
     17        (-[WebAccessibilityObjectWrapper accessibilityLinkRelationshipType]):
     18        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
     19        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
     20        (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
     21
    1222018-05-30  Brady Eidson  <beidson@apple.com>
    223
  • trunk/Source/WebCore/accessibility/AccessibilityObject.cpp

    r232287 r232326  
    25282528}
    25292529   
     2530const AtomicString& AccessibilityObject::linkRelValue() const
     2531{
     2532    return getAttribute(relAttr);
     2533}
     2534   
    25302535const String AccessibilityObject::keyShortcutsValue() const
    25312536{
  • trunk/Source/WebCore/accessibility/AccessibilityObject.h

    r232229 r232326  
    709709    bool supportsRangeValue() const;
    710710    const AtomicString& identifierAttribute() const;
     711    const AtomicString& linkRelValue() const;
    711712    void classList(Vector<String>&) const;
    712713    virtual String roleDescription() const;
  • trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm

    r232229 r232326  
    18241824}
    18251825
     1826- (NSString *)accessibilityLinkRelationshipType
     1827{
     1828    if (![self _prepareAccessibilityCall])
     1829        return nil;
     1830   
     1831    return m_object->linkRelValue();
     1832}
     1833
    18261834- (BOOL)accessibilityRequired
    18271835{
  • trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm

    r232229 r232326  
    407407#ifndef NSAccessibilityHighestEditableAncestorAttribute
    408408#define NSAccessibilityHighestEditableAncestorAttribute @"AXHighestEditableAncestor"
     409#endif
     410
     411#ifndef NSAccessibilityLinkRelationshipTypeAttribute
     412#define NSAccessibilityLinkRelationshipTypeAttribute @"AXLinkRelationshipType"
    409413#endif
    410414
     
    13301334        [tempArray addObject:NSAccessibilityURLAttribute];
    13311335        [tempArray addObject:NSAccessibilityAccessKeyAttribute];
     1336        [tempArray addObject:NSAccessibilityLinkRelationshipTypeAttribute];
    13321337        anchorAttrs = [[NSArray alloc] initWithArray:tempArray];
    13331338        [tempArray release];
     
    27372742    }
    27382743   
     2744    if ([attributeName isEqualToString:NSAccessibilityLinkRelationshipTypeAttribute])
     2745        return m_object->linkRelValue();
     2746   
    27392747    if ([attributeName isEqualToString:NSAccessibilityTabsAttribute]) {
    27402748        if (m_object->isTabList()) {
Note: See TracChangeset for help on using the changeset viewer.