Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <execinfo.h> | 5 #include <execinfo.h> |
| 6 | 6 |
| 7 #import "content/browser/accessibility/browser_accessibility_cocoa.h" | 7 #import "content/browser/accessibility/browser_accessibility_cocoa.h" |
| 8 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 | 10 |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 101 { NSAccessibilityVisibleCharacterRangeAttribute, @"visibleCharacterRange" }, | 101 { NSAccessibilityVisibleCharacterRangeAttribute, @"visibleCharacterRange" }, |
| 102 { NSAccessibilityVisibleCellsAttribute, @"visibleCells" }, | 102 { NSAccessibilityVisibleCellsAttribute, @"visibleCells" }, |
| 103 { NSAccessibilityVisibleChildrenAttribute, @"visibleChildren" }, | 103 { NSAccessibilityVisibleChildrenAttribute, @"visibleChildren" }, |
| 104 { NSAccessibilityVisibleColumnsAttribute, @"visibleColumns" }, | 104 { NSAccessibilityVisibleColumnsAttribute, @"visibleColumns" }, |
| 105 { NSAccessibilityVisibleRowsAttribute, @"visibleRows" }, | 105 { NSAccessibilityVisibleRowsAttribute, @"visibleRows" }, |
| 106 { NSAccessibilityWindowAttribute, @"window" }, | 106 { NSAccessibilityWindowAttribute, @"window" }, |
| 107 { @"AXAccessKey", @"accessKey" }, | 107 { @"AXAccessKey", @"accessKey" }, |
| 108 { @"AXARIAAtomic", @"ariaAtomic" }, | 108 { @"AXARIAAtomic", @"ariaAtomic" }, |
| 109 { @"AXARIABusy", @"ariaBusy" }, | 109 { @"AXARIABusy", @"ariaBusy" }, |
| 110 { @"AXARIALive", @"ariaLive" }, | 110 { @"AXARIALive", @"ariaLive" }, |
| 111 { @"AXARIAPosInSet", @"ariaPosInSet" }, | |
| 112 { @"AXARIASetSize", @"ariaSetSize" }, | |
| 111 { @"AXARIARelevant", @"ariaRelevant" }, | 113 { @"AXARIARelevant", @"ariaRelevant" }, |
| 112 { @"AXDropEffects", @"dropeffect" }, | 114 { @"AXDropEffects", @"dropeffect" }, |
| 113 { @"AXGrabbed", @"grabbed" }, | 115 { @"AXGrabbed", @"grabbed" }, |
| 114 { @"AXInvalid", @"invalid" }, | 116 { @"AXInvalid", @"invalid" }, |
| 115 { @"AXLoaded", @"loaded" }, | 117 { @"AXLoaded", @"loaded" }, |
| 116 { @"AXLoadingProgress", @"loadingProgress" }, | 118 { @"AXLoadingProgress", @"loadingProgress" }, |
| 117 { @"AXPlaceholder", @"placeholder" }, | 119 { @"AXPlaceholder", @"placeholder" }, |
| 118 { @"AXRequired", @"required" }, | 120 { @"AXRequired", @"required" }, |
| 119 { @"AXSortDirection", @"sortDirection" }, | 121 { @"AXSortDirection", @"sortDirection" }, |
| 120 { @"AXVisited", @"visited" }, | 122 { @"AXVisited", @"visited" }, |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 163 - (NSString*)ariaLive { | 165 - (NSString*)ariaLive { |
| 164 return NSStringForStringAttribute( | 166 return NSStringForStringAttribute( |
| 165 browserAccessibility_, ui::AX_ATTR_LIVE_STATUS); | 167 browserAccessibility_, ui::AX_ATTR_LIVE_STATUS); |
| 166 } | 168 } |
| 167 | 169 |
| 168 - (NSString*)ariaRelevant { | 170 - (NSString*)ariaRelevant { |
| 169 return NSStringForStringAttribute( | 171 return NSStringForStringAttribute( |
| 170 browserAccessibility_, ui::AX_ATTR_LIVE_RELEVANT); | 172 browserAccessibility_, ui::AX_ATTR_LIVE_RELEVANT); |
| 171 } | 173 } |
| 172 | 174 |
| 175 - (NSNumber*)ariaPosInSet { | |
| 176 return [NSNumber numberWithInt: | |
| 177 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_POS_IN_SET)]; | |
| 178 } | |
| 179 | |
| 180 - (NSNumber*)ariaSetSize { | |
| 181 return [NSNumber numberWithInt: | |
| 182 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_SET_SIZE)]; | |
| 183 } | |
| 184 | |
| 173 // Returns an array of BrowserAccessibilityCocoa objects, representing the | 185 // Returns an array of BrowserAccessibilityCocoa objects, representing the |
| 174 // accessibility children of this object. | 186 // accessibility children of this object. |
| 175 - (NSArray*)children { | 187 - (NSArray*)children { |
| 176 if (!children_) { | 188 if (!children_) { |
| 177 uint32 childCount = browserAccessibility_->PlatformChildCount(); | 189 uint32 childCount = browserAccessibility_->PlatformChildCount(); |
| 178 children_.reset([[NSMutableArray alloc] initWithCapacity:childCount]); | 190 children_.reset([[NSMutableArray alloc] initWithCapacity:childCount]); |
| 179 for (uint32 index = 0; index < childCount; ++index) { | 191 for (uint32 index = 0; index < childCount; ++index) { |
| 180 BrowserAccessibilityCocoa* child = | 192 BrowserAccessibilityCocoa* child = |
| 181 browserAccessibility_->PlatformGetChild(index)-> | 193 browserAccessibility_->PlatformGetChild(index)-> |
| 182 ToBrowserAccessibilityCocoa(); | 194 ToBrowserAccessibilityCocoa(); |
| (...skipping 1121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1304 NSAccessibilityPositionAttribute, | 1316 NSAccessibilityPositionAttribute, |
| 1305 NSAccessibilityRoleAttribute, | 1317 NSAccessibilityRoleAttribute, |
| 1306 NSAccessibilityRoleDescriptionAttribute, | 1318 NSAccessibilityRoleDescriptionAttribute, |
| 1307 NSAccessibilitySizeAttribute, | 1319 NSAccessibilitySizeAttribute, |
| 1308 NSAccessibilitySubroleAttribute, | 1320 NSAccessibilitySubroleAttribute, |
| 1309 NSAccessibilityTitleAttribute, | 1321 NSAccessibilityTitleAttribute, |
| 1310 NSAccessibilityTopLevelUIElementAttribute, | 1322 NSAccessibilityTopLevelUIElementAttribute, |
| 1311 NSAccessibilityValueAttribute, | 1323 NSAccessibilityValueAttribute, |
| 1312 NSAccessibilityWindowAttribute, | 1324 NSAccessibilityWindowAttribute, |
| 1313 @"AXAccessKey", | 1325 @"AXAccessKey", |
| 1326 @"AXARIAPosInSet", | |
|
dmazzoni
2015/04/21 05:56:21
I think we should only include these if they're re
| |
| 1327 @"AXARIASetSize", | |
| 1314 @"AXInvalid", | 1328 @"AXInvalid", |
| 1315 @"AXVisited", | 1329 @"AXVisited", |
| 1316 nil]; | 1330 nil]; |
| 1317 | 1331 |
| 1318 // Specific role attributes. | 1332 // Specific role attributes. |
| 1319 NSString* role = [self role]; | 1333 NSString* role = [self role]; |
| 1320 NSString* subrole = [self subrole]; | 1334 NSString* subrole = [self subrole]; |
| 1321 if ([role isEqualToString:NSAccessibilityTableRole] || | 1335 if ([role isEqualToString:NSAccessibilityTableRole] || |
| 1322 [role isEqualToString:NSAccessibilityGridRole]) { | 1336 [role isEqualToString:NSAccessibilityGridRole]) { |
| 1323 [ret addObjectsFromArray:[NSArray arrayWithObjects: | 1337 [ret addObjectsFromArray:[NSArray arrayWithObjects: |
| (...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1624 if (!browserAccessibility_) | 1638 if (!browserAccessibility_) |
| 1625 return [super hash]; | 1639 return [super hash]; |
| 1626 return browserAccessibility_->GetId(); | 1640 return browserAccessibility_->GetId(); |
| 1627 } | 1641 } |
| 1628 | 1642 |
| 1629 - (BOOL)accessibilityShouldUseUniqueId { | 1643 - (BOOL)accessibilityShouldUseUniqueId { |
| 1630 return YES; | 1644 return YES; |
| 1631 } | 1645 } |
| 1632 | 1646 |
| 1633 @end | 1647 @end |
| OLD | NEW |