| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/browser/accessibility/browser_accessibility_win.h" | 5 #include "content/browser/accessibility/browser_accessibility_win.h" |
| 6 | 6 |
| 7 #include <UIAutomationClient.h> | 7 #include <UIAutomationClient.h> |
| 8 #include <UIAutomationCoreApi.h> | 8 #include <UIAutomationCoreApi.h> |
| 9 | 9 |
| 10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
| (...skipping 3394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3405 case ui::AX_ROLE_BLOCKQUOTE: | 3405 case ui::AX_ROLE_BLOCKQUOTE: |
| 3406 role_name_ = html_tag; | 3406 role_name_ = html_tag; |
| 3407 ia2_role_ = IA2_ROLE_SECTION; | 3407 ia2_role_ = IA2_ROLE_SECTION; |
| 3408 break; | 3408 break; |
| 3409 case ui::AX_ROLE_BUSY_INDICATOR: | 3409 case ui::AX_ROLE_BUSY_INDICATOR: |
| 3410 ia_role_ = ROLE_SYSTEM_ANIMATION; | 3410 ia_role_ = ROLE_SYSTEM_ANIMATION; |
| 3411 ia_state_ |= STATE_SYSTEM_READONLY; | 3411 ia_state_ |= STATE_SYSTEM_READONLY; |
| 3412 break; | 3412 break; |
| 3413 case ui::AX_ROLE_BUTTON: | 3413 case ui::AX_ROLE_BUTTON: |
| 3414 ia_role_ = ROLE_SYSTEM_PUSHBUTTON; | 3414 ia_role_ = ROLE_SYSTEM_PUSHBUTTON; |
| 3415 bool is_aria_pressed_defined; | |
| 3416 bool is_mixed; | |
| 3417 if (GetAriaTristate("aria-pressed", &is_aria_pressed_defined, &is_mixed)) | |
| 3418 ia_state_ |= STATE_SYSTEM_PRESSED; | |
| 3419 if (is_aria_pressed_defined) | |
| 3420 ia2_role_ = IA2_ROLE_TOGGLE_BUTTON; | |
| 3421 if (is_mixed) | |
| 3422 ia_state_ |= STATE_SYSTEM_MIXED; | |
| 3423 break; | 3415 break; |
| 3424 case ui::AX_ROLE_CANVAS: | 3416 case ui::AX_ROLE_CANVAS: |
| 3425 if (GetBoolAttribute(ui::AX_ATTR_CANVAS_HAS_FALLBACK)) { | 3417 if (GetBoolAttribute(ui::AX_ATTR_CANVAS_HAS_FALLBACK)) { |
| 3426 role_name_ = L"canvas"; | 3418 role_name_ = L"canvas"; |
| 3427 ia2_role_ = IA2_ROLE_CANVAS; | 3419 ia2_role_ = IA2_ROLE_CANVAS; |
| 3428 } else { | 3420 } else { |
| 3429 ia_role_ = ROLE_SYSTEM_GRAPHIC; | 3421 ia_role_ = ROLE_SYSTEM_GRAPHIC; |
| 3430 } | 3422 } |
| 3431 break; | 3423 break; |
| 3432 case ui::AX_ROLE_CELL: | 3424 case ui::AX_ROLE_CELL: |
| (...skipping 400 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3833 // The role should always be set. | 3825 // The role should always be set. |
| 3834 DCHECK(!role_name_.empty() || ia_role_); | 3826 DCHECK(!role_name_.empty() || ia_role_); |
| 3835 | 3827 |
| 3836 // If we didn't explicitly set the IAccessible2 role, make it the same | 3828 // If we didn't explicitly set the IAccessible2 role, make it the same |
| 3837 // as the MSAA role. | 3829 // as the MSAA role. |
| 3838 if (!ia2_role_) | 3830 if (!ia2_role_) |
| 3839 ia2_role_ = ia_role_; | 3831 ia2_role_ = ia_role_; |
| 3840 } | 3832 } |
| 3841 | 3833 |
| 3842 } // namespace content | 3834 } // namespace content |
| OLD | NEW |