Chromium Code Reviews| Index: ui/accessibility/ax.idl |
| diff --git a/ui/accessibility/ax.idl b/ui/accessibility/ax.idl |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..fcde351cdad05e6811d8b5229515cbaa1c4253c0 |
| --- /dev/null |
| +++ b/ui/accessibility/ax.idl |
| @@ -0,0 +1,326 @@ |
| +// 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. |
| +namespace ax { |
| + enum AXEvent { |
|
aboxhall
2014/01/22 17:49:45
Given this is all in the ax namespace, do we need
David Tseng
2014/01/22 20:53:54
We do because the idl parser generator uses the en
|
| + activedescendantchanged, |
| + alert, |
| + aria_attribute_changed, |
| + autocorrection_occured, |
| + blur, |
| + checked_state_changed, |
| + children_changed, |
| + focus, |
| + hide, |
| + invalid_status_changed, |
| + layout_complete, |
| + live_region_changed, |
| + load_complete, |
| + location_changed, |
| + menu_list_item_selected, |
| + menu_list_value_changed, |
| + row_collapsed, |
| + row_count_changed, |
| + row_expanded, |
| + scrolled_to_anchor, |
| + selected_children_changed, |
| + selected_text_changed, |
| + show, |
| + text_changed, |
| + text_inserted, |
| + text_removed, |
| + value_changed |
| + }; |
| + |
| + enum AXRole { |
| + unused, |
| + alert_dialog, |
| + alert, |
| + annotation, |
| + application, |
| + article, |
| + banner, |
| + browser, |
| + busy_indicator, |
| + button, |
| + canvas, |
| + cell, |
| + check_box, |
| + color_well, |
| + column_header, |
| + column, |
| + combo_box, |
| + complementary, |
| + content_info, |
| + definition, |
| + description_list_detail, |
| + description_list_term, |
| + dialog, |
| + directory, |
| + disclosure_triangle, |
| + div, |
| + document, |
| + drawer, |
| + editable_text, |
| + footer, |
| + form, |
| + grid, |
| + group, |
| + grow_area, |
| + heading, |
| + help_tag, |
| + horizontal_rule, |
| + ignored, |
| + image_map_link, |
| + image_map, |
| + image, |
| + incrementor, |
| + inline_text_box, |
| + label_text, |
| + legend, |
| + link, |
| + list_box_option, |
| + list_box, |
| + list_item, |
| + list_marker, |
| + list, |
| + log, |
| + main, |
| + marquee, |
| + math_element, |
| + math, |
| + matte, |
| + menu_bar, |
| + menu_button, |
| + menu_item, |
| + menu_list_option, |
| + menu_list_popup, |
| + menu, |
| + navigation, |
| + note, |
| + outline, |
| + paragraph, |
| + pop_up_button, |
| + presentational, |
| + progress_indicator, |
| + radio_button, |
| + radio_group, |
| + region, |
| + root_web_area, |
| + row_header, |
| + row, |
| + ruler_marker, |
| + ruler, |
| + svg_root, |
| + scroll_area, |
| + scroll_bar, |
| + seamless_web_area, |
| + search, |
| + sheet, |
| + slider, |
| + slider_thumb, |
| + spin_button_part, |
| + spin_button, |
| + split_group, |
| + splitter, |
| + static_text, |
| + status, |
| + system_wide, |
| + tab_group, |
| + tab_list, |
| + tab_panel, |
| + tab, |
| + table_header_container, |
| + table, |
| + text_area, |
| + text_field, |
| + timer, |
| + toggle_button, |
| + toolbar, |
| + tree_grid, |
| + tree_item, |
| + tree, |
| + unknown, |
| + tooltip, |
| + value_indicator, |
| + web_area, |
| + window |
| + }; |
| + |
| + enum AXState { |
| + busy, |
| + checked, |
| + collapsed, |
| + enabled, |
| + expanded, |
| + focusable, |
| + focused, |
| + haspopup, |
| + hovered, |
| + indeterminate, |
| + invisible, |
| + linked, |
| + multiselectable, |
| + offscreen, |
| + pressed, |
| + protected, |
| + read_only, |
| + required, |
| + selectable, |
| + selected, |
| + vertical, |
| + visited |
| + }; |
| + |
| + [absolute] enum AXStringAttribute { |
| + // Document attributes. |
| + ax_attr_doc_url, |
| + ax_attr_doc_title, |
| + ax_attr_doc_mimetype, |
| + ax_attr_doc_doctype, |
| + |
| + // Attributes that could apply to any node. |
| + ax_attr_access_key, |
| + ax_attr_action, |
| + ax_attr_container_live_relevant, |
| + ax_attr_container_live_status, |
| + ax_attr_description, |
| + ax_attr_display, |
| + ax_attr_help, |
| + ax_attr_html_tag, |
| + ax_attr_name, |
| + ax_attr_live_relevant, |
| + ax_attr_live_status, |
| + ax_attr_role, |
| + ax_attr_shortcut, |
| + ax_attr_url, |
| + ax_attr_value, |
| + }; |
| + |
| + [absolute] enum AXIntAttribute { |
| + // Scrollable container attributes. |
| + ax_attr_scroll_x, |
| + ax_attr_scroll_x_min, |
| + ax_attr_scroll_x_max, |
| + ax_attr_scroll_y, |
| + ax_attr_scroll_y_min, |
| + ax_attr_scroll_y_max, |
| + |
| + // Editable text attributes. |
| + ax_attr_text_sel_start, |
| + ax_attr_text_sel_end, |
| + |
| + // Table attributes. |
| + ax_attr_table_row_count, |
| + ax_attr_table_column_count, |
| + ax_attr_table_header_id, |
| + |
| + // Table row attributes. |
| + ax_attr_table_row_index, |
| + ax_attr_table_row_header_id, |
| + |
| + // Table column attributes. |
| + ax_attr_table_column_index, |
| + ax_attr_table_column_header_id, |
| + |
| + // Table cell attributes. |
| + ax_attr_table_cell_column_index, |
| + ax_attr_table_cell_column_span, |
| + ax_attr_table_cell_row_index, |
| + ax_attr_table_cell_row_span, |
| + |
| + // Tree control attributes. |
| + ax_attr_hierarchical_level, |
| + |
| + // Relationships between this element and other elements. |
| + ax_attr_title_ui_element, |
| + |
| + // Color value for AX_ROLE_COLOR_WELL, each component is 0..255 |
| + ax_attr_color_value_red, |
| + ax_attr_color_value_green, |
| + ax_attr_color_value_blue, |
| + |
| + // Inline text attributes. |
| + ax_attr_text_direction |
| + }; |
| + |
| + [absolute] enum AXFloatAttribute { |
| + // Document attributes. |
| + ax_attr_doc_loading_progress, |
| + |
| + // Range attributes. |
| + ax_attr_value_for_range, |
| + ax_attr_min_value_for_range, |
| + ax_attr_max_value_for_range, |
| + }; |
| + |
| + [absolute] enum AXBoolAttribute { |
| + // Document attributes. |
| + ax_attr_doc_loaded, |
| + |
| + // True if a checkbox or radio button is in the "mixed" state. |
| + ax_attr_button_mixed, |
| + |
| + // Live region attributes. |
| + ax_attr_container_live_atomic, |
| + ax_attr_container_live_busy, |
| + ax_attr_live_atomic, |
| + ax_attr_live_busy, |
| + |
| + // ARIA readonly flag. |
| + ax_attr_aria_readonly, |
| + |
| + // Writeable attributes |
| + ax_attr_can_set_value, |
| + |
| + // If this is set, all of the other fields in this struct should |
| + // be ignored and only the locations should change. |
| + ax_attr_update_location_only, |
| + |
| + // Set on a canvas element if it has fallback content. |
| + ax_attr_canvas_has_fallback, |
| + }; |
| + |
| + [absolute] 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. |
| + ax_attr_indirect_child_ids, |
| + |
| + // Character indices where line breaks occur. |
| + ax_attr_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. |
| + ax_attr_cell_ids, |
| + |
| + // For a table, the unique cell ids in row-major order of their first |
| + // occurrence. |
| + ax_attr_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. |
| + ax_attr_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. |
| + ax_attr_word_starts, |
| + ax_attr_word_ends, |
| + }; |
| + |
| + [absolute] enum AXTextDirection { |
| + ax_text_direction_lr, |
| + ax_text_direction_rl, |
| + ax_text_direction_tb, |
| + ax_text_direction_bt, |
| + }; |
| +}; |