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 1172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1183 // Returns the list of accessibility attributes that this object supports. | 1183 // Returns the list of accessibility attributes that this object supports. |
1184 - (NSArray*)accessibilityAttributeNames { | 1184 - (NSArray*)accessibilityAttributeNames { |
1185 if (!browserAccessibility_) | 1185 if (!browserAccessibility_) |
1186 return nil; | 1186 return nil; |
1187 | 1187 |
1188 // General attributes. | 1188 // General attributes. |
1189 NSMutableArray* ret = [NSMutableArray arrayWithObjects: | 1189 NSMutableArray* ret = [NSMutableArray arrayWithObjects: |
1190 NSAccessibilityChildrenAttribute, | 1190 NSAccessibilityChildrenAttribute, |
1191 NSAccessibilityDescriptionAttribute, | 1191 NSAccessibilityDescriptionAttribute, |
1192 NSAccessibilityEnabledAttribute, | 1192 NSAccessibilityEnabledAttribute, |
1193 NSAccessibilityExpandedAttribute, | |
1194 NSAccessibilityFocusedAttribute, | 1193 NSAccessibilityFocusedAttribute, |
1195 NSAccessibilityHelpAttribute, | 1194 NSAccessibilityHelpAttribute, |
1196 NSAccessibilityLinkedUIElementsAttribute, | 1195 NSAccessibilityLinkedUIElementsAttribute, |
1197 NSAccessibilityParentAttribute, | 1196 NSAccessibilityParentAttribute, |
1198 NSAccessibilityPositionAttribute, | 1197 NSAccessibilityPositionAttribute, |
1199 NSAccessibilityRoleAttribute, | 1198 NSAccessibilityRoleAttribute, |
1200 NSAccessibilityRoleDescriptionAttribute, | 1199 NSAccessibilityRoleDescriptionAttribute, |
1201 NSAccessibilitySizeAttribute, | 1200 NSAccessibilitySizeAttribute, |
1202 NSAccessibilitySubroleAttribute, | 1201 NSAccessibilitySubroleAttribute, |
1203 NSAccessibilityTitleAttribute, | 1202 NSAccessibilityTitleAttribute, |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1312 nil]]; | 1311 nil]]; |
1313 } | 1312 } |
1314 if (browserAccessibility_->HasStringAttribute( | 1313 if (browserAccessibility_->HasStringAttribute( |
1315 ui::AX_ATTR_CONTAINER_LIVE_STATUS)) { | 1314 ui::AX_ATTR_CONTAINER_LIVE_STATUS)) { |
1316 [ret addObjectsFromArray:[NSArray arrayWithObjects: | 1315 [ret addObjectsFromArray:[NSArray arrayWithObjects: |
1317 @"AXARIAAtomic", | 1316 @"AXARIAAtomic", |
1318 @"AXARIABusy", | 1317 @"AXARIABusy", |
1319 nil]]; | 1318 nil]]; |
1320 } | 1319 } |
1321 | 1320 |
| 1321 //Add expanded attribute only if it has expanded or collapsed state. |
| 1322 if (GetState(browserAccessibility_,ui::AX_STATE_EXPANDED) || |
| 1323 GetState(browserAccessibility_,ui::AX_STATE_COLLAPSED)) { |
| 1324 [ret addObjectsFromArray:[NSArray arrayWithObjects: |
| 1325 NSAccessibilityExpandedAttribute, |
| 1326 nil]]; |
| 1327 } |
| 1328 |
1322 // Title UI Element. | 1329 // Title UI Element. |
1323 if (browserAccessibility_->HasIntAttribute(ui::AX_ATTR_TITLE_UI_ELEMENT) || | 1330 if (browserAccessibility_->HasIntAttribute(ui::AX_ATTR_TITLE_UI_ELEMENT) || |
1324 (browserAccessibility_->HasIntListAttribute(ui::AX_ATTR_LABELLEDBY_IDS) && | 1331 (browserAccessibility_->HasIntListAttribute(ui::AX_ATTR_LABELLEDBY_IDS) && |
1325 browserAccessibility_->GetIntListAttribute(ui::AX_ATTR_LABELLEDBY_IDS) | 1332 browserAccessibility_->GetIntListAttribute(ui::AX_ATTR_LABELLEDBY_IDS) |
1326 .size() == 1)) { | 1333 .size() == 1)) { |
1327 [ret addObjectsFromArray:[NSArray arrayWithObjects: | 1334 [ret addObjectsFromArray:[NSArray arrayWithObjects: |
1328 NSAccessibilityTitleUIElementAttribute, | 1335 NSAccessibilityTitleUIElementAttribute, |
1329 nil]]; | 1336 nil]]; |
1330 } | 1337 } |
1331 // TODO(aboxhall): expose NSAccessibilityServesAsTitleForUIElementsAttribute | 1338 // TODO(aboxhall): expose NSAccessibilityServesAsTitleForUIElementsAttribute |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1474 return [super hash]; | 1481 return [super hash]; |
1475 return browserAccessibility_->GetId(); | 1482 return browserAccessibility_->GetId(); |
1476 } | 1483 } |
1477 | 1484 |
1478 - (BOOL)accessibilityShouldUseUniqueId { | 1485 - (BOOL)accessibilityShouldUseUniqueId { |
1479 return YES; | 1486 return YES; |
1480 } | 1487 } |
1481 | 1488 |
1482 @end | 1489 @end |
1483 | 1490 |
OLD | NEW |