| 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] ||
|
|
|