Title: [208197] trunk
Revision
208197
Author
n_w...@apple.com
Date
2016-10-31 17:03:52 -0700 (Mon, 31 Oct 2016)

Log Message

AX: aria-sort is not exposed on iOS
https://bugs.webkit.org/show_bug.cgi?id=164245

Reviewed by Chris Fleizach.

Source/WebCore:

Exposed the aria-sort attribute value in accessibilitySortDirection.

Test: accessibility/ios-simulator/aria-sort-ios.html

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilitySortDirection]):

Tools:

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

LayoutTests:

* accessibility/ios-simulator/aria-sort-ios-expected.txt: Added.
* accessibility/ios-simulator/aria-sort-ios.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (208196 => 208197)


--- trunk/LayoutTests/ChangeLog	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/LayoutTests/ChangeLog	2016-11-01 00:03:52 UTC (rev 208197)
@@ -1,3 +1,13 @@
+2016-10-31  Nan Wang  <n_w...@apple.com>
+
+        AX: aria-sort is not exposed on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=164245
+
+        Reviewed by Chris Fleizach.
+
+        * accessibility/ios-simulator/aria-sort-ios-expected.txt: Added.
+        * accessibility/ios-simulator/aria-sort-ios.html: Added.
+
 2016-10-31  Ryan Haddad  <ryanhad...@apple.com>
 
         Unreviewed, rolling out r208178.

Added: trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios-expected.txt (0 => 208197)


--- trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios-expected.txt	2016-11-01 00:03:52 UTC (rev 208197)
@@ -0,0 +1,15 @@
+column column column
+row
+This tests that aria-sort is exposed correctly to the iOS accessibility API.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS col1.stringAttributeValue('AXSortDirection') is 'ascending'
+PASS col2.stringAttributeValue('AXSortDirection') is 'descending'
+PASS col3.stringAttributeValue('AXSortDirection') is 'other'
+PASS row1.stringAttributeValue('AXSortDirection') is null
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios.html (0 => 208197)


--- trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios.html	                        (rev 0)
+++ trunk/LayoutTests/accessibility/ios-simulator/aria-sort-ios.html	2016-11-01 00:03:52 UTC (rev 208197)
@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script src=""
+</head>
+<body>
+
+<div role="grid">
+<div role="row">
+<span role="gridcell"></span>
+<!-- Ascending aria-sort direction. -->
+<span aria-sort="ascending" aria-label="label" id="col1" role="columnheader">column</span>
+<!-- Descending aria-sort direction. -->
+<span aria-sort="descending" id="col2" role="columnheader">column</span>
+<!-- Other aria-sort direction. -->
+<span aria-sort="other" id="col3" role="columnheader">column</span>
+</div>
+<div role="row">
+<!-- No aria-sort direction. -->
+<span id="row1" role="rowheader">row</span>
+<span role="gridcell"></span>
+</div>
+</div>
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+    description("This tests that aria-sort is exposed correctly to the iOS accessibility API.");
+    
+    if (window.accessibilityController) {
+        var col1 = accessibilityController.accessibleElementById("col1");
+        shouldBe("col1.stringAttributeValue('AXSortDirection')", "'ascending'");
+        
+        var col2 = accessibilityController.accessibleElementById("col2");
+        shouldBe("col2.stringAttributeValue('AXSortDirection')", "'descending'");
+        
+        var col3 = accessibilityController.accessibleElementById("col3");
+        shouldBe("col3.stringAttributeValue('AXSortDirection')", "'other'");
+        
+        var row1 = accessibilityController.accessibleElementById("row1");
+        shouldBe("row1.stringAttributeValue('AXSortDirection')", "null");
+    }
+</script>
+
+<script src=""
+</body>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (208196 => 208197)


--- trunk/Source/WebCore/ChangeLog	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/Source/WebCore/ChangeLog	2016-11-01 00:03:52 UTC (rev 208197)
@@ -1,3 +1,17 @@
+2016-10-31  Nan Wang  <n_w...@apple.com>
+
+        AX: aria-sort is not exposed on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=164245
+
+        Reviewed by Chris Fleizach.
+
+        Exposed the aria-sort attribute value in accessibilitySortDirection.
+
+        Test: accessibility/ios-simulator/aria-sort-ios.html
+
+        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+        (-[WebAccessibilityObjectWrapper accessibilitySortDirection]):
+
 2016-10-31  Ryan Haddad  <ryanhad...@apple.com>
 
         Unreviewed, rolling out r208178.

Modified: trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm (208196 => 208197)


--- trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2016-11-01 00:03:52 UTC (rev 208197)
@@ -2758,6 +2758,24 @@
     }
 }
 
+- (NSString *)accessibilitySortDirection
+{
+    if (![self _prepareAccessibilityCall])
+        return nil;
+    
+    switch (m_object->sortDirection()) {
+    case SortDirectionAscending:
+        return @"ascending";
+    case SortDirectionDescending:
+        return @"descending";
+    case SortDirectionOther:
+        return @"other";
+    default:
+    case SortDirectionNone:
+        return nil;
+    }
+}
+
 - (WebAccessibilityObjectWrapper *)accessibilityMathRootIndexObject
 {
     if (![self _prepareAccessibilityCall])

Modified: trunk/Tools/ChangeLog (208196 => 208197)


--- trunk/Tools/ChangeLog	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/Tools/ChangeLog	2016-11-01 00:03:52 UTC (rev 208197)
@@ -1,3 +1,15 @@
+2016-10-31  Nan Wang  <n_w...@apple.com>
+
+        AX: aria-sort is not exposed on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=164245
+
+        Reviewed by Chris Fleizach.
+
+        * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
+        (AccessibilityUIElement::stringAttributeValue):
+        * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
+        (WTR::AccessibilityUIElement::stringAttributeValue):
+
 2016-10-31  Simon Fraser  <simon.fra...@apple.com>
 
         Implement IntersectionObserver

Modified: trunk/Tools/DumpRenderTree/ios/AccessibilityUIElementIOS.mm (208196 => 208197)


--- trunk/Tools/DumpRenderTree/ios/AccessibilityUIElementIOS.mm	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/Tools/DumpRenderTree/ios/AccessibilityUIElementIOS.mm	2016-11-01 00:03:52 UTC (rev 208197)
@@ -97,6 +97,7 @@
 - (id)_accessibilityFieldsetAncestor;
 - (BOOL)_accessibilityHasTouchEventListener;
 - (NSString *)accessibilityExpandedTextValue;
+- (NSString *)accessibilitySortDirection;
 - (BOOL)accessibilityIsExpanded;
 
 // TextMarker related
@@ -660,6 +661,9 @@
     if (JSStringIsEqualToUTF8CString(attribute, "AXExpandedTextValue"))
         return [[m_element accessibilityExpandedTextValue] createJSStringRef];
     
+    if (JSStringIsEqualToUTF8CString(attribute, "AXSortDirection"))
+        return [[m_element accessibilitySortDirection] createJSStringRef];
+    
     return JSStringCreateWithCharacters(0, 0);
 }
 

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm (208196 => 208197)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm	2016-10-31 23:57:05 UTC (rev 208196)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm	2016-11-01 00:03:52 UTC (rev 208197)
@@ -74,6 +74,7 @@
 - (id)_accessibilityFieldsetAncestor;
 - (BOOL)_accessibilityHasTouchEventListener;
 - (NSString *)accessibilityExpandedTextValue;
+- (NSString *)accessibilitySortDirection;
 - (BOOL)accessibilityIsExpanded;
 
 // TextMarker related
@@ -346,6 +347,9 @@
 
     if (JSStringIsEqualToUTF8CString(attribute, "AXExpandedTextValue"))
         return [[m_element accessibilityExpandedTextValue] createJSStringRef];
+    
+    if (JSStringIsEqualToUTF8CString(attribute, "AXSortDirection"))
+        return [[m_element accessibilitySortDirection] createJSStringRef];
 
     return JSStringCreateWithCharacters(0, 0);
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to