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

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

Issue 2707263011: Test aria-pressed=mixed on windows (Closed)
Patch Set: git cl try Created 3 years, 7 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_com_win.cc
diff --git a/content/browser/accessibility/browser_accessibility_com_win.cc b/content/browser/accessibility/browser_accessibility_com_win.cc
index bc2248263cbd405c3c8f2c449fb81649ea2fb8ba..9d620c924702e080203651b677bb37d6acac2d26 100644
--- a/content/browser/accessibility/browser_accessibility_com_win.cc
+++ b/content/browser/accessibility/browser_accessibility_com_win.cc
@@ -5060,13 +5060,13 @@ void BrowserAccessibilityComWin::InitRoleAndState() {
if (owner()->HasState(ui::AX_STATE_BUSY))
ia_state |= STATE_SYSTEM_BUSY;
- const auto checked_state = static_cast<ui::AXCheckedState>(
+ const auto checked_state = static_cast<ui::AXButtonState>(
owner()->GetIntAttribute(ui::AX_ATTR_CHECKED_STATE));
switch (checked_state) {
- case ui::AX_CHECKED_STATE_TRUE:
+ case ui::AX_BUTTON_STATE_TRUE:
ia_state |= STATE_SYSTEM_CHECKED;
break;
- case ui::AX_CHECKED_STATE_MIXED:
+ case ui::AX_BUTTON_STATE_MIXED:
ia_state |= STATE_SYSTEM_MIXED;
break;
default:
@@ -5096,8 +5096,6 @@ void BrowserAccessibilityComWin::InitRoleAndState() {
// TODO(ctguil): Support STATE_SYSTEM_EXTSELECTABLE/accSelect.
if (owner()->HasState(ui::AX_STATE_OFFSCREEN))
ia_state |= STATE_SYSTEM_OFFSCREEN;
- if (owner()->HasState(ui::AX_STATE_PRESSED))
- ia_state |= STATE_SYSTEM_PRESSED;
if (owner()->HasState(ui::AX_STATE_PROTECTED))
ia_state |= STATE_SYSTEM_PROTECTED;
if (owner()->HasState(ui::AX_STATE_REQUIRED))
@@ -5525,6 +5523,12 @@ void BrowserAccessibilityComWin::InitRoleAndState() {
case ui::AX_ROLE_TOGGLE_BUTTON:
ia_role = ROLE_SYSTEM_PUSHBUTTON;
ia2_role = IA2_ROLE_TOGGLE_BUTTON;
+ const auto pressed_state = static_cast<ui::AXButtonState>(
+ owner()->GetIntAttribute(ui::AX_ATTR_PRESSED_STATE));
+ if (pressed_state == ui::AX_CHECKED_STATE_TRUE)
+ ia_state |= STATE_SYSTEM_PRESSED;
+ else if (pressed_state == ui::AX_CHECKED_STATE_MIXED)
+ ia_state |= STATE_SYSTEM_MIXED;
break;
case ui::AX_ROLE_TEXT_FIELD:
case ui::AX_ROLE_SEARCH_BOX:

Powered by Google App Engine
This is Rietveld 408576698