Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Unified Diff: content/browser/accessibility/browser_accessibility_cocoa.mm

Issue 744843002: Added the aria-sort state to the accessibility tree. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Separated ARIA grid and HTML table tests. Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/accessibility/browser_accessibility_cocoa.mm
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm
index dd3daeb708ae7ca53fee6594de7b3bf4c8c34c11..bb642aefe40c47cb42c0113405e995612916dd26 100644
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
@@ -114,6 +114,7 @@ NSDictionary* attributeToMethodNameMap = nil;
{ @"AXLoadingProgress", @"loadingProgress" },
{ @"AXPlaceholder", @"placeholder" },
{ @"AXRequired", @"required" },
+ { @"AXSortDirection", @"sortDirection" },
{ @"AXVisited", @"visited" },
};
@@ -774,6 +775,28 @@ NSDictionary* attributeToMethodNameMap = nil;
return [NSValue valueWithSize:NSMakeSize(bounds.width(), bounds.height())];
}
+- (NSString*)sortDirection {
+ int sortDirection;
+ if (!browserAccessibility_->GetIntAttribute(
+ ui::AX_ATTR_SORT_DIRECTION, &sortDirection))
+ return @"";
+
+ switch (sortDirection) {
+ case ui::AX_SORT_DIRECTION_Unsorted:
dmazzoni 2015/01/27 18:59:17 enum should be all caps
+ return @"";
+ case ui::AX_SORT_DIRECTION_ASCENDING:
+ return @"AXSortDirectionAscending";
+ case ui::AX_SORT_DIRECTION_DESCENDING:
+ return @"AXSortDirectionDescending";
+ case ui::AX_SORT_DIRECTION_OTHER:
+ return @"AXSortDirectionUnknown";
+ default:
+ NOTREACHED();
+ }
+
+ return @"";
+}
+
// Returns a subrole based upon the role.
- (NSString*) subrole {
ui::AXRole browserAccessibilityRole = [self internalRole];
@@ -1290,6 +1313,7 @@ NSDictionary* attributeToMethodNameMap = nil;
[ret addObjectsFromArray:[NSArray arrayWithObjects:
NSAccessibilityColumnIndexRangeAttribute,
NSAccessibilityRowIndexRangeAttribute,
+ @"AXSortDirection",
nil]];
} else if ([role isEqualToString:@"AXWebArea"]) {
[ret addObjectsFromArray:[NSArray arrayWithObjects:

Powered by Google App Engine
This is Rietveld 408576698