| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // These should be kept in sync with third_party/WebKit/public/web/WebAXEnums.h |
| // until the Chromium and Blink trees are merged. |
| [camel_case_enum_to_string=true] namespace ui { |
| |
| // For new entries to the following three enums, also add to |
| // 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, // Web |
| alert, |
| aria_attribute_changed, // Implicit |
| autocorrection_occured, // Unknown: http://crbug.com/392498 |
| blur, // Remove: http://crbug.com/392502 |
| checked_state_changed, // Implicit |
| children_changed, |
| clicked, |
| document_selection_changed, |
| expanded_changed, // Web |
| focus, |
| hide, // Remove: http://crbug.com/392502 |
| hover, |
| 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_selection_changed, |
| tree_changed, // Accessibility tree changed. Don't |
| // explicitly fire an accessibility event, |
| // only implicitly due to the change. |
| value_changed |
| }; |
| |
| enum AXRole { |
| abbr, |
| alert_dialog, |
| alert, |
| annotation, |
| application, |
| article, |
| banner, |
| blockquote, |
| // TODO(nektar): Remove busy_indicator because it's used nowhere. |
| busy_indicator, |
| button, |
| button_drop_down, // Not used on Web. |
| canvas, |
| caption, |
| cell, |
| check_box, |
| client, |
| color_well, |
| column_header, |
| column, |
| combo_box, |
| complementary, |
| content_info, |
| date, |
| date_time, |
| definition, |
| description_list_detail, |
| description_list, |
| description_list_term, |
| desktop, |
| details, |
| dialog, |
| directory, |
| disclosure_triangle, |
| div, |
| document, |
| embedded_object, |
| figcaption, |
| figure, |
| footer, |
| form, |
| grid, |
| group, |
| heading, |
| iframe, |
| iframe_presentational, |
| ignored, |
| image_map_link, |
| image_map, |
| image, |
| inline_text_box, |
| input_time, |
| label_text, |
| legend, |
| line_break, |
| link, |
| list_box_option, |
| list_box, |
| list_item, |
| list_marker, |
| list, |
| location_bar, |
| log, |
| main, |
| mark, |
| marquee, |
| math, |
| menu, |
| menu_bar, |
| menu_button, |
| menu_item, |
| menu_item_check_box, |
| menu_item_radio, |
| menu_list_option, |
| menu_list_popup, |
| meter, |
| navigation, |
| note, |
| outline, |
| pane, |
| paragraph, |
| pop_up_button, |
| pre, |
| presentational, |
| progress_indicator, |
| radio_button, |
| radio_group, |
| region, |
| root_web_area, |
| row_header, |
| row, |
| ruby, |
| ruler, |
| svg_root, |
| scroll_area, |
| scroll_bar, |
| seamless_web_area, |
| search, |
| search_box, |
| slider, |
| slider_thumb, |
| spin_button_part, |
| spin_button, |
| splitter, |
| static_text, |
| status, |
| switch, |
| tab_group, |
| tab_list, |
| tab_panel, |
| tab, |
| table_header_container, |
| table, |
| text_field, |
| time, |
| timer, |
| title_bar, |
| toggle_button, |
| toolbar, |
| tree_grid, |
| tree_item, |
| tree, |
| unknown, |
| tooltip, |
| web_area, |
| web_view, |
| window |
| }; |
| |
| // TODO(dmazzoni): switch content/ to use AX_STATE_DISABLED instead of |
| // !AX_STATE_ENABLED. |
| enum AXState { |
| busy, |
| checked, |
| collapsed, |
| default, |
| disabled, // ui/views only |
| editable, |
| enabled, // content only |
| expanded, |
| focusable, |
| haspopup, |
| horizontal, |
| hovered, |
| invisible, |
| linked, |
| multiline, |
| multiselectable, |
| offscreen, |
| pressed, |
| protected, |
| read_only, |
| required, |
| richly_editable, |
| selectable, |
| selected, |
| vertical, |
| visited |
| }; |
| |
| // A change to the accessibility tree. |
| enum AXMutation { |
| node_created, |
| subtree_created, |
| node_changed, |
| node_removed |
| }; |
| |
| [cpp_enum_prefix_override="ax_attr"] enum AXStringAttribute { |
| access_key, |
| action, |
| // Only used when invalid_state == invalid_state_other. |
| aria_invalid_value, |
| auto_complete, |
| container_live_relevant, |
| container_live_status, |
| description, |
| display, |
| // Only present when different from parent. |
| font_family, |
| html_tag, |
| // Only present when different from parent. |
| language, |
| name, |
| live_relevant, |
| live_status, |
| placeholder, |
| role, |
| shortcut, |
| url, |
| value |
| }; |
| |
| [cpp_enum_prefix_override="ax_attr"] enum AXIntAttribute { |
| // Scrollable container attributes. |
| scroll_x, |
| scroll_x_min, |
| scroll_x_max, |
| scroll_y, |
| scroll_y_min, |
| scroll_y_max, |
| |
| // Attributes for retrieving the endpoints of a selection. |
| text_sel_start, |
| text_sel_end, |
| |
| // Table attributes. |
| table_row_count, |
| table_column_count, |
| table_header_id, |
| |
| // Table row attributes. |
| table_row_index, |
| table_row_header_id, |
| |
| // Table column attributes. |
| table_column_index, |
| table_column_header_id, |
| |
| // Table cell attributes. |
| table_cell_column_index, |
| table_cell_column_span, |
| table_cell_row_index, |
| table_cell_row_span, |
| sort_direction, |
| |
| // Tree control attributes. |
| hierarchical_level, |
| |
| // What information was used to compute the object's name |
| // (of type AXNameFrom). |
| name_from, |
| |
| // What information was used to compute the object's description |
| // (of type AXDescriptionFrom). |
| description_from, |
| |
| // Relationships between this element and other elements. |
| activedescendant_id, |
| next_on_line_id, |
| previous_on_line_id, |
| |
| // Identifies a child tree which this node hosts. |
| child_tree_id, |
| |
| // Position or Number of items in current set of listitems or treeitems |
| set_size, |
| pos_in_set, |
| |
| // In the case of AX_ROLE_COLOR_WELL, specifies the selected color. |
| color_value, |
| |
| // Indicates the element that represents the current item within a container |
| // or set of related elements. |
| aria_current_state, |
| |
| // Text attributes. |
| |
| // Foreground and background color in RGBA. |
| background_color, |
| color, |
| |
| // Indicates if a form control has invalid input or |
| // if an element has an aria-invalid attribute. |
| invalid_state, |
| |
| // Specifies the direction of the text, e.g., right-to-left. |
| text_direction, |
| |
| // Bold, italic, underline, etc. |
| text_style |
| }; |
| |
| [cpp_enum_prefix_override="ax_attr"] enum AXFloatAttribute { |
| // Range attributes. |
| value_for_range, |
| min_value_for_range, |
| max_value_for_range, |
| |
| // Text attributes. |
| // Font size is in pixels. |
| font_size |
| }; |
| |
| [cpp_enum_prefix_override="ax_attr"] enum AXBoolAttribute { |
| // True if an ARIA toggle button, a checkbox or |
| // a menu item checkbox is in the "mixed" state. |
| STATE_mixed, |
| |
| // Live region attributes. |
| container_live_atomic, |
| container_live_busy, |
| live_atomic, |
| live_busy, |
| |
| // ARIA readonly flag. |
| aria_readonly, |
| |
| // Writeable attributes |
| can_set_value, |
| |
| // If this is set, all of the other fields in this struct should |
| // be ignored and only the locations should change. |
| update_location_only, |
| |
| // Set on a canvas element if it has fallback content. |
| canvas_has_fallback |
| }; |
| |
| [cpp_enum_prefix_override="ax_attr"] enum AXIntListAttribute { |
| // Ids of nodes that are children of this node logically, but are |
| // not children of this node in the tree structure. As an example, |
| // a table cell is a child of a row, and an 'indirect' child of a |
| // column. |
| indirect_child_ids, |
| |
| // Relationships between this element and other elements. |
| controls_ids, |
| describedby_ids, |
| flowto_ids, |
| labelledby_ids, |
| |
| // Character indices where line breaks occur. |
| line_breaks, |
| |
| // For a table, the cell ids in row-major order, with duplicate entries |
| // when there's a rowspan or colspan, and with -1 for missing cells. |
| // There are always exactly rows * columns entries. |
| cell_ids, |
| |
| // For a table, the unique cell ids in row-major order of their first |
| // occurrence. |
| unique_cell_ids, |
| |
| // For inline text. This is the pixel position of the end of this |
| // character within the bounding rectangle of this object, in the |
| // direction given by AX_ATTR_TEXT_DIRECTION. For example, for left-to-right |
| // text, the first offset is the right coordinate of the first character |
| // within the object's bounds, the second offset is the right coordinate |
| // of the second character, and so on. |
| character_offsets, |
| |
| // For inline text. These int lists must be the same size; they represent |
| // the start and end character index of each word within this text. |
| word_starts, |
| word_ends |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXTextDirection { |
| text_direction_ltr, |
| text_direction_rtl, |
| text_direction_ttb, |
| text_direction_btt |
| }; |
| |
| // A Java counterpart will be generated for this enum. |
| // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.ui.accessibility |
| [cpp_enum_prefix_override="ax"] enum AXTextStyle { |
| text_style_bold = 1, |
| text_style_italic = 2, |
| text_style_underline = 4, |
| text_style_line_through = 8 |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXAriaCurrentState { |
| aria_current_state_false, |
| aria_current_state_true, |
| aria_current_state_page, |
| aria_current_state_step, |
| aria_current_state_location, |
| aria_current_state_date, |
| aria_current_state_time |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXInvalidState { |
| invalid_state_false, |
| invalid_state_true, |
| invalid_state_spelling, |
| invalid_state_grammar, |
| invalid_state_other |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXSortDirection { |
| sort_direction_unsorted, |
| sort_direction_ascending, |
| sort_direction_descending, |
| sort_direction_other |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXNameFrom { |
| name_from_uninitialized = 0, |
| name_from_attribute, |
| name_from_contents, |
| name_from_placeholder, |
| name_from_related_element, |
| name_from_value |
| }; |
| |
| [cpp_enum_prefix_override="ax"] enum AXDescriptionFrom { |
| description_from_uninitialized = 0, |
| description_from_attribute, |
| description_from_contents, |
| description_from_placeholder, |
| description_from_related_element |
| }; |
| |
| // Touch gestures on Chrome OS. |
| enum AXGesture { |
| double_tap, |
| swipe_left_1, |
| swipe_up_1, |
| swipe_right_1, |
| swipe_down_1, |
| swipe_left_2, |
| swipe_up_2, |
| swipe_right_2, |
| swipe_down_2, |
| swipe_left_3, |
| swipe_up_3, |
| swipe_right_3, |
| swipe_down_3, |
| swipe_left_4, |
| swipe_up_4, |
| swipe_right_4, |
| swipe_down_4 |
| }; |
| }; |