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 3420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3431 ia_role_ = ROLE_SYSTEM_COLUMN; | 3431 ia_role_ = ROLE_SYSTEM_COLUMN; |
3432 ia_state_ |= STATE_SYSTEM_READONLY; | 3432 ia_state_ |= STATE_SYSTEM_READONLY; |
3433 break; | 3433 break; |
3434 case ui::AX_ROLE_COLUMN_HEADER: | 3434 case ui::AX_ROLE_COLUMN_HEADER: |
3435 ia_role_ = ROLE_SYSTEM_COLUMNHEADER; | 3435 ia_role_ = ROLE_SYSTEM_COLUMNHEADER; |
3436 ia_state_ |= STATE_SYSTEM_READONLY; | 3436 ia_state_ |= STATE_SYSTEM_READONLY; |
3437 break; | 3437 break; |
3438 case ui::AX_ROLE_COMBO_BOX: | 3438 case ui::AX_ROLE_COMBO_BOX: |
3439 ia_role_ = ROLE_SYSTEM_COMBOBOX; | 3439 ia_role_ = ROLE_SYSTEM_COMBOBOX; |
3440 break; | 3440 break; |
| 3441 case ui::AX_ROLE_DATE: |
| 3442 ia_role_ = ROLE_SYSTEM_DROPLIST; |
| 3443 ia2_role_ = IA2_ROLE_DATE_EDITOR; |
| 3444 break; |
| 3445 case ui::AX_ROLE_DATE_TIME: |
| 3446 ia_role_ = ROLE_SYSTEM_DROPLIST; |
| 3447 ia2_role_ = IA2_ROLE_DATE_EDITOR; |
| 3448 break; |
3441 case ui::AX_ROLE_DIV: | 3449 case ui::AX_ROLE_DIV: |
3442 role_name_ = L"div"; | 3450 role_name_ = L"div"; |
3443 ia2_role_ = IA2_ROLE_SECTION; | 3451 ia2_role_ = IA2_ROLE_SECTION; |
3444 break; | 3452 break; |
3445 case ui::AX_ROLE_DEFINITION: | 3453 case ui::AX_ROLE_DEFINITION: |
3446 role_name_ = html_tag; | 3454 role_name_ = html_tag; |
3447 ia2_role_ = IA2_ROLE_PARAGRAPH; | 3455 ia2_role_ = IA2_ROLE_PARAGRAPH; |
3448 ia_state_ |= STATE_SYSTEM_READONLY; | 3456 ia_state_ |= STATE_SYSTEM_READONLY; |
3449 break; | 3457 break; |
3450 case ui::AX_ROLE_DESCRIPTION_LIST_DETAIL: | 3458 case ui::AX_ROLE_DESCRIPTION_LIST_DETAIL: |
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3731 ia2_state_ |= IA2_STATE_MULTI_LINE; | 3739 ia2_state_ |= IA2_STATE_MULTI_LINE; |
3732 ia2_state_ |= IA2_STATE_EDITABLE; | 3740 ia2_state_ |= IA2_STATE_EDITABLE; |
3733 ia2_state_ |= IA2_STATE_SELECTABLE_TEXT; | 3741 ia2_state_ |= IA2_STATE_SELECTABLE_TEXT; |
3734 break; | 3742 break; |
3735 case ui::AX_ROLE_TEXT_FIELD: | 3743 case ui::AX_ROLE_TEXT_FIELD: |
3736 ia_role_ = ROLE_SYSTEM_TEXT; | 3744 ia_role_ = ROLE_SYSTEM_TEXT; |
3737 ia2_state_ |= IA2_STATE_SINGLE_LINE; | 3745 ia2_state_ |= IA2_STATE_SINGLE_LINE; |
3738 ia2_state_ |= IA2_STATE_EDITABLE; | 3746 ia2_state_ |= IA2_STATE_EDITABLE; |
3739 ia2_state_ |= IA2_STATE_SELECTABLE_TEXT; | 3747 ia2_state_ |= IA2_STATE_SELECTABLE_TEXT; |
3740 break; | 3748 break; |
| 3749 case ui::AX_ROLE_TIME: |
| 3750 ia_role_ = ROLE_SYSTEM_SPINBUTTON; |
| 3751 break; |
3741 case ui::AX_ROLE_TIMER: | 3752 case ui::AX_ROLE_TIMER: |
3742 ia_role_ = ROLE_SYSTEM_CLOCK; | 3753 ia_role_ = ROLE_SYSTEM_CLOCK; |
3743 ia_state_ |= STATE_SYSTEM_READONLY; | 3754 ia_state_ |= STATE_SYSTEM_READONLY; |
3744 break; | 3755 break; |
3745 case ui::AX_ROLE_TOOLBAR: | 3756 case ui::AX_ROLE_TOOLBAR: |
3746 ia_role_ = ROLE_SYSTEM_TOOLBAR; | 3757 ia_role_ = ROLE_SYSTEM_TOOLBAR; |
3747 ia_state_ |= STATE_SYSTEM_READONLY; | 3758 ia_state_ |= STATE_SYSTEM_READONLY; |
3748 break; | 3759 break; |
3749 case ui::AX_ROLE_TOOLTIP: | 3760 case ui::AX_ROLE_TOOLTIP: |
3750 ia_role_ = ROLE_SYSTEM_TOOLTIP; | 3761 ia_role_ = ROLE_SYSTEM_TOOLTIP; |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3806 // The role should always be set. | 3817 // The role should always be set. |
3807 DCHECK(!role_name_.empty() || ia_role_); | 3818 DCHECK(!role_name_.empty() || ia_role_); |
3808 | 3819 |
3809 // If we didn't explicitly set the IAccessible2 role, make it the same | 3820 // If we didn't explicitly set the IAccessible2 role, make it the same |
3810 // as the MSAA role. | 3821 // as the MSAA role. |
3811 if (!ia2_role_) | 3822 if (!ia2_role_) |
3812 ia2_role_ = ia_role_; | 3823 ia2_role_ = ia_role_; |
3813 } | 3824 } |
3814 | 3825 |
3815 } // namespace content | 3826 } // namespace content |
OLD | NEW |