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

Unified Diff: content/browser/accessibility/browser_accessibility_win.cc

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_win.cc
diff --git a/content/browser/accessibility/browser_accessibility_win.cc b/content/browser/accessibility/browser_accessibility_win.cc
index ed2742c09528ea6aa61c25f217432eb19c9bf96a..045aad7b42b156a85f6ca357bebe28f41ac75fda 100644
--- a/content/browser/accessibility/browser_accessibility_win.cc
+++ b/content/browser/accessibility/browser_accessibility_win.cc
@@ -5073,8 +5073,20 @@ void BrowserAccessibilityWin::InitRoleAndState() {
if (HasState(ui::AX_STATE_BUSY))
ia_state |= STATE_SYSTEM_BUSY;
- if (HasState(ui::AX_STATE_CHECKED))
- ia_state |= STATE_SYSTEM_CHECKED;
+
+ const auto checked_state = static_cast<ui::AXCheckedState>(
+ GetIntAttribute(ui::AX_ATTR_CHECKED_STATE));
+ switch (checked_state) {
+ case ui::AX_CHECKED_STATE_TRUE:
+ ia_state |= STATE_SYSTEM_CHECKED;
+ break;
+ case ui::AX_CHECKED_STATE_MIXED:
+ ia_state |= STATE_SYSTEM_MIXED;
+ break;
+ default:
+ break;
+ }
+
if (HasState(ui::AX_STATE_COLLAPSED))
ia_state |= STATE_SYSTEM_COLLAPSED;
if (HasState(ui::AX_STATE_EXPANDED))
@@ -5131,9 +5143,6 @@ void BrowserAccessibilityWin::InitRoleAndState() {
if (HasState(ui::AX_STATE_EDITABLE))
ia2_state |= IA2_STATE_EDITABLE;
- if (GetBoolAttribute(ui::AX_ATTR_STATE_MIXED))
- ia_state |= STATE_SYSTEM_MIXED;
-
if (GetBoolAttribute(ui::AX_ATTR_CAN_SET_VALUE))
ia2_state |= IA2_STATE_EDITABLE;

Powered by Google App Engine
This is Rietveld 408576698