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 3798 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3809 ia_role_ = ROLE_SYSTEM_OUTLINE; | 3809 ia_role_ = ROLE_SYSTEM_OUTLINE; |
3810 break; | 3810 break; |
3811 case ui::AX_ROLE_TREE_ITEM: | 3811 case ui::AX_ROLE_TREE_ITEM: |
3812 ia_role_ = ROLE_SYSTEM_OUTLINEITEM; | 3812 ia_role_ = ROLE_SYSTEM_OUTLINEITEM; |
3813 break; | 3813 break; |
3814 case ui::AX_ROLE_WINDOW: | 3814 case ui::AX_ROLE_WINDOW: |
3815 ia_role_ = ROLE_SYSTEM_WINDOW; | 3815 ia_role_ = ROLE_SYSTEM_WINDOW; |
3816 break; | 3816 break; |
3817 | 3817 |
3818 // TODO(dmazzoni): figure out the proper MSAA role for all of these. | 3818 // TODO(dmazzoni): figure out the proper MSAA role for all of these. |
3819 case ui::AX_ROLE_BROWSER: | |
3820 case ui::AX_ROLE_DIRECTORY: | 3819 case ui::AX_ROLE_DIRECTORY: |
3821 case ui::AX_ROLE_DRAWER: | |
3822 case ui::AX_ROLE_HELP_TAG: | |
3823 case ui::AX_ROLE_IGNORED: | 3820 case ui::AX_ROLE_IGNORED: |
3824 case ui::AX_ROLE_LOG: | 3821 case ui::AX_ROLE_LOG: |
3825 case ui::AX_ROLE_MATTE: | |
3826 case ui::AX_ROLE_NONE: | 3822 case ui::AX_ROLE_NONE: |
3827 case ui::AX_ROLE_PRESENTATIONAL: | 3823 case ui::AX_ROLE_PRESENTATIONAL: |
3828 case ui::AX_ROLE_RULER_MARKER: | |
3829 case ui::AX_ROLE_SHEET: | |
3830 case ui::AX_ROLE_SLIDER_THUMB: | 3824 case ui::AX_ROLE_SLIDER_THUMB: |
3831 case ui::AX_ROLE_SYSTEM_WIDE: | |
3832 case ui::AX_ROLE_VALUE_INDICATOR: | |
3833 default: | 3825 default: |
3834 ia_role_ = ROLE_SYSTEM_CLIENT; | 3826 ia_role_ = ROLE_SYSTEM_CLIENT; |
3835 break; | 3827 break; |
3836 } | 3828 } |
3837 | 3829 |
3838 // Compute the final value of READONLY for MSAA. | 3830 // Compute the final value of READONLY for MSAA. |
3839 // | 3831 // |
3840 // We always set the READONLY state for elements that have the | 3832 // We always set the READONLY state for elements that have the |
3841 // aria-readonly attribute and for a few roles (in the switch above). | 3833 // aria-readonly attribute and for a few roles (in the switch above). |
3842 // We clear the READONLY state on focusable controls and on a document. | 3834 // We clear the READONLY state on focusable controls and on a document. |
(...skipping 10 matching lines...) Expand all Loading... |
3853 // The role should always be set. | 3845 // The role should always be set. |
3854 DCHECK(!role_name_.empty() || ia_role_); | 3846 DCHECK(!role_name_.empty() || ia_role_); |
3855 | 3847 |
3856 // If we didn't explicitly set the IAccessible2 role, make it the same | 3848 // If we didn't explicitly set the IAccessible2 role, make it the same |
3857 // as the MSAA role. | 3849 // as the MSAA role. |
3858 if (!ia2_role_) | 3850 if (!ia2_role_) |
3859 ia2_role_ = ia_role_; | 3851 ia2_role_ = ia_role_; |
3860 } | 3852 } |
3861 | 3853 |
3862 } // namespace content | 3854 } // namespace content |
OLD | NEW |