diff options
author | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-10 19:28:56 +0000 |
---|---|---|
committer | dmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-10 19:28:56 +0000 |
commit | a98e3c6f5c50afbbd3d9d5f5e019860f6001d924 (patch) | |
tree | d0902144896f7d35b86d3e3da8e0e773504c64b0 /ui/accessibility | |
parent | 9b034f7b8da8decd9b99a1133f86917b58cffe7e (diff) | |
download | chromium_src-a98e3c6f5c50afbbd3d9d5f5e019860f6001d924.zip chromium_src-a98e3c6f5c50afbbd3d9d5f5e019860f6001d924.tar.gz chromium_src-a98e3c6f5c50afbbd3d9d5f5e019860f6001d924.tar.bz2 |
Implement accessible states and notifications for the tab strip.
This change just exposes information about what tabs are selected
and fires proper notifications when tab selection changes. This will
allow screen readers to announce when switching tabs even if the
web content doesn't have focus. It's also a good first step towards
making the tab strip fully accessible too (e.g. making it possible to
perform operations on multiple tabs with just the keyboard).
As part of this change I renamed the "selection changed" event to
"text selection changed" so that there's no confusion between the
text-selection-related events, and tab/list selection events.
BUG=100412
Review URL: https://codereview.chromium.org/349033010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282396 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/accessibility')
-rw-r--r-- | ui/accessibility/ax_enums.idl | 73 |
1 files changed, 43 insertions, 30 deletions
diff --git a/ui/accessibility/ax_enums.idl b/ui/accessibility/ax_enums.idl index adab1aa..2605c6a 100644 --- a/ui/accessibility/ax_enums.idl +++ b/ui/accessibility/ax_enums.idl @@ -7,42 +7,55 @@ [camel_case_enum_to_string=true] namespace ui { // For new entries to the following three enums, also add to - // chrome/common/extensions/apis/automation.idl. + // chrome/common/extensions/api/automation.idl. + // + // Explanation of the comments next to these events: + // + // Web: this event is only used in web content. Unless a specific platform + // is specified, it fires a native event on multiple platforms. + // + // Native: this event is only used in native UI. + // + // Implicit: it would be cleaner if we just updated the AX node + // and each platform fired the appropriate events to indicate which + // platform-specific attributes changed. + // + // If unspecified, the event is used across web and native on multiple + // platforms. enum AXEvent { - activedescendantchanged, + activedescendantchanged, // Web alert, - aria_attribute_changed, - autocorrection_occured, - blur, - checked_state_changed, + aria_attribute_changed, // Implicit + autocorrection_occured, // Unknown: http://crbug.com/392498 + blur, // Remove: http://crbug.com/392502 + checked_state_changed, // Implicit children_changed, - destroyed, focus, - hide, + hide, // Remove: http://crbug.com/392502 hover, - invalid_status_changed, - layout_complete, - live_region_changed, - load_complete, - location_changed, - menu_end, - menu_list_item_selected, - menu_list_value_changed, - menu_popup_end, - menu_popup_start, - menu_start, - row_collapsed, - row_count_changed, - row_expanded, - scroll_position_changed, - scrolled_to_anchor, - selected_children_changed, - selected_text_changed, - selection_changed, - show, + invalid_status_changed, // Implicit + layout_complete, // Web + live_region_changed, // Web + load_complete, // Web + location_changed, // Web + menu_end, // Native / Win + menu_list_item_selected, // Web + menu_list_value_changed, // Web + menu_popup_end, // Native / Win + menu_popup_start, // Native / Win + menu_start, // Native / Win + row_collapsed, // Web / Mac + row_count_changed, // Web / Mac + row_expanded, // Web / Mac + scroll_position_changed, // Web + scrolled_to_anchor, // Web + selected_children_changed, // Web + selection, // Native + selection_add, // Native + selection_remove, // Native + show, // Remove: http://crbug.com/392502 text_changed, - text_inserted, - text_removed, + text_selection_changed, value_changed }; |