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

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

Issue 2694903010: AX checked state changes (Closed)
Patch Set: git cl try Created 3 years, 8 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 89fe4d98eb764cf4b58f7788bb5e989611c3578a..aeb609262e23c16ea0b9ab00eed6972f905fff7d 100644
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
@@ -1885,16 +1885,19 @@ NSString* const NSAccessibilityRequiredAttribute = @"AXRequired";
[role isEqualToString:NSAccessibilityRadioButtonRole] ||
[self internalRole] == ui::AX_ROLE_MENU_ITEM_CHECK_BOX ||
[self internalRole] == ui::AX_ROLE_MENU_ITEM_RADIO) {
- int value = 0;
- value = GetState(
- browserAccessibility_, ui::AX_STATE_CHECKED) ? 1 : 0;
- value = GetState(
- browserAccessibility_, ui::AX_STATE_SELECTED) ?
- 1 :
- value;
-
- if (browserAccessibility_->GetBoolAttribute(ui::AX_ATTR_STATE_MIXED)) {
- value = 2;
+ int value;
+ const auto checkedState = static_cast<ui::AXCheckedState>(
+ browserAccessibility_->GetIntAttribute(ui::AX_ATTR_CHECKED_STATE));
+ switch (checkedState) {
+ case ui::AX_CHECKED_STATE_TRUE:
+ value = 1;
+ break;
+ case ui::AX_CHECKED_STATE_MIXED:
+ value = 2;
+ break;
+ default:
+ value = GetState(browserAccessibility_, ui::AX_STATE_SELECTED) ? 1 : 0;
+ break;
}
return [NSNumber numberWithInt:value];
} else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] ||

Powered by Google App Engine
This is Rietveld 408576698