Index: content/browser/accessibility/browser_accessibility_win.cc |
diff --git a/content/browser/accessibility/browser_accessibility_win.cc b/content/browser/accessibility/browser_accessibility_win.cc |
index ff239430f396c979c0644cf9aabd8e6b5a260ec2..2de9a230364f342200feadfe908b901dbe9fd717 100644 |
--- a/content/browser/accessibility/browser_accessibility_win.cc |
+++ b/content/browser/accessibility/browser_accessibility_win.cc |
@@ -3423,6 +3423,14 @@ void BrowserAccessibilityWin::InitRoleAndState() { |
break; |
case ui::AX_ROLE_CHECK_BOX: |
ia_role_ = ROLE_SYSTEM_CHECKBUTTON; |
+ ia2_state_ |= IA2_STATE_CHECKABLE; |
+ bool is_aria_checked_defined; |
+ bool is_mixed_check; |
+ if (GetAriaTristate("aria-checked", |
+ &is_aria_checked_defined, &is_mixed_check)) |
+ ia_state_ |= STATE_SYSTEM_CHECKED; |
+ if (is_mixed_check) |
+ ia_state_ |= STATE_SYSTEM_MIXED; |
break; |
case ui::AX_ROLE_COLOR_WELL: |
ia_role_ = ROLE_SYSTEM_CLIENT; |