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 7afcb30426c6481756c7d3c20af6d4bca173ef30..4713e85183e9b0cc9d62915be74790db8199e51a 100644 |
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm |
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm |
@@ -1562,8 +1562,7 @@ bool InitializeAccessibilityTreeSearch( |
NSAccessibilityCellForColumnAndRowParameterizedAttribute, |
nil]]; |
} |
- if ([[self role] isEqualToString:NSAccessibilityTextFieldRole] || |
- [[self role] isEqualToString:NSAccessibilityTextAreaRole]) { |
+ if (GetState(browserAccessibility_, ui::AX_STATE_EDITABLE)) { |
[ret addObjectsFromArray:[NSArray arrayWithObjects: |
NSAccessibilityLineForIndexParameterizedAttribute, |
NSAccessibilityRangeForLineParameterizedAttribute, |
@@ -1699,15 +1698,6 @@ bool InitializeAccessibilityTreeSearch( |
@"AXLoaded", |
@"AXLoadingProgress", |
nil]]; |
- } else if ([role isEqualToString:NSAccessibilityTextFieldRole] || |
- [role isEqualToString:NSAccessibilityTextAreaRole]) { |
- [ret addObjectsFromArray:[NSArray arrayWithObjects: |
- NSAccessibilityInsertionPointLineNumberAttribute, |
- NSAccessibilityNumberOfCharactersAttribute, |
- NSAccessibilitySelectedTextAttribute, |
- NSAccessibilitySelectedTextRangeAttribute, |
- NSAccessibilityVisibleCharacterRangeAttribute, |
- nil]]; |
} else if ([role isEqualToString:NSAccessibilityTabGroupRole]) { |
[ret addObject:NSAccessibilityTabsAttribute]; |
} else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] || |
@@ -1752,6 +1742,17 @@ bool InitializeAccessibilityTreeSearch( |
nil]]; |
} |
+ // Caret navigation and text selection attributes. |
+ if (GetState(browserAccessibility_, ui::AX_STATE_EDITABLE)) { |
+ [ret addObjectsFromArray:[NSArray arrayWithObjects: |
+ NSAccessibilityInsertionPointLineNumberAttribute, |
+ NSAccessibilityNumberOfCharactersAttribute, |
+ NSAccessibilitySelectedTextAttribute, |
+ NSAccessibilitySelectedTextRangeAttribute, |
+ NSAccessibilityVisibleCharacterRangeAttribute, |
+ nil]]; |
+ } |
+ |
// Add the url attribute only if it has a valid url. |
if ([self url] != nil) { |
[ret addObjectsFromArray:[NSArray arrayWithObjects: |