Remove unused parameter.
[chromium-blink-merge.git] / ui / accessibility / ax_enums.idl
blob1c7a119adf30c3f8a306acbb97e8c872280dae97
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // These should be kept in sync with third_party/WebKit/public/web/WebAXEnums.h
6 // until the Chromium and Blink trees are merged.
7 [camel_case_enum_to_string=true] namespace ui {
9 // For new entries to the following three enums, also add to
10 // chrome/common/extensions/api/automation.idl.
12 // Explanation of the comments next to these events:
14 // Web: this event is only used in web content. Unless a specific platform
15 // is specified, it fires a native event on multiple platforms.
17 // Native: this event is only used in native UI.
19 // Implicit: it would be cleaner if we just updated the AX node
20 // and each platform fired the appropriate events to indicate which
21 // platform-specific attributes changed.
23 // If unspecified, the event is used across web and native on multiple
24 // platforms.
25 enum AXEvent {
26 activedescendantchanged, // Web
27 alert,
28 aria_attribute_changed, // Implicit
29 autocorrection_occured, // Unknown: http://crbug.com/392498
30 blur, // Remove: http://crbug.com/392502
31 checked_state_changed, // Implicit
32 children_changed,
33 focus,
34 hide, // Remove: http://crbug.com/392502
35 hover,
36 invalid_status_changed, // Implicit
37 layout_complete, // Web
38 live_region_changed, // Web
39 load_complete, // Web
40 location_changed, // Web
41 menu_end, // Native / Win
42 menu_list_item_selected, // Web
43 menu_list_value_changed, // Web
44 menu_popup_end, // Native / Win
45 menu_popup_start, // Native / Win
46 menu_start, // Native / Win
47 row_collapsed, // Web / Mac
48 row_count_changed, // Web / Mac
49 row_expanded, // Web / Mac
50 scroll_position_changed, // Web
51 scrolled_to_anchor, // Web
52 selected_children_changed, // Web
53 selection, // Native
54 selection_add, // Native
55 selection_remove, // Native
56 show, // Remove: http://crbug.com/392502
57 text_changed,
58 text_selection_changed,
59 tree_changed, // Accessibility tree changed. Don't
60 // explicitly fire an accessibility event,
61 // only implicitly due to the change.
62 value_changed
65 enum AXRole {
66 alert_dialog,
67 alert,
68 annotation,
69 application,
70 article,
71 banner,
72 blockquote,
73 busy_indicator,
74 button,
75 button_drop_down,
76 canvas,
77 caption,
78 cell,
79 check_box,
80 client,
81 color_well,
82 column_header,
83 column,
84 combo_box,
85 complementary,
86 content_info,
87 date,
88 date_time,
89 definition,
90 description_list_detail,
91 description_list,
92 description_list_term,
93 desktop,
94 details,
95 dialog,
96 directory,
97 disclosure_triangle,
98 div,
99 document,
100 embedded_object,
101 figcaption,
102 figure,
103 footer,
104 form,
105 grid,
106 group,
107 heading,
108 iframe,
109 iframe_presentational,
110 ignored,
111 image_map_link,
112 image_map,
113 image,
114 inline_text_box,
115 label_text,
116 legend,
117 line_break,
118 link,
119 list_box_option,
120 list_box,
121 list_item,
122 list_marker,
123 list,
124 location_bar,
125 log,
126 main,
127 marquee,
128 math,
129 menu_bar,
130 menu_button,
131 menu_item,
132 menu_item_check_box,
133 menu_item_radio,
134 menu_list_option,
135 menu_list_popup,
136 menu,
137 meter,
138 navigation,
139 note,
140 outline,
141 pane,
142 paragraph,
143 pop_up_button,
144 pre,
145 presentational,
146 progress_indicator,
147 radio_button,
148 radio_group,
149 region,
150 root_web_area,
151 row_header,
152 row,
153 ruby,
154 ruler,
155 svg_root,
156 scroll_area,
157 scroll_bar,
158 seamless_web_area,
159 search,
160 search_box,
161 slider,
162 slider_thumb,
163 spin_button_part,
164 spin_button,
165 splitter,
166 static_text,
167 status,
168 switch,
169 tab_group,
170 tab_list,
171 tab_panel,
172 tab,
173 table_header_container,
174 table,
175 text_area,
176 text_field,
177 time,
178 timer,
179 title_bar,
180 toggle_button,
181 toolbar,
182 tree_grid,
183 tree_item,
184 tree,
185 unknown,
186 tooltip,
187 web_area,
188 web_view,
189 window
192 // TODO(dmazzoni): switch content/ to use AX_STATE_DISABLED instead of
193 // !AX_STATE_ENABLED, and AX_STATE_EDITABLE instead of !AX_STATE_READONLY.
194 enum AXState {
195 busy,
196 checked,
197 collapsed,
198 default,
199 disabled, // ui/views only
200 editable, // ui/views only
201 enabled, // content only
202 expanded,
203 focusable,
204 focused,
205 haspopup,
206 horizontal,
207 hovered,
208 indeterminate,
209 invisible,
210 linked,
211 multiselectable,
212 offscreen,
213 pressed,
214 protected,
215 read_only,
216 required,
217 selectable,
218 selected,
219 vertical,
220 visited
223 // A change to the accessibility tree.
224 enum AXMutation {
225 node_created,
226 subtree_created,
227 node_changed,
228 node_removed
231 [cpp_enum_prefix_override="ax_attr"] enum AXStringAttribute {
232 // Document attributes.
233 doc_url,
234 doc_title,
235 doc_mimetype,
236 doc_doctype,
238 // Attributes that could apply to any node.
239 access_key,
240 action,
241 auto_complete,
242 container_live_relevant,
243 container_live_status,
244 description,
245 display,
246 dropeffect,
247 help,
248 html_tag,
249 // Only used when invalid_state == invalid_state_other.
250 aria_invalid_value,
251 name,
252 live_relevant,
253 live_status,
254 placeholder,
255 role,
256 shortcut,
257 text_input_type,
258 url,
259 value
262 [cpp_enum_prefix_override="ax_attr"] enum AXIntAttribute {
263 // Scrollable container attributes.
264 scroll_x,
265 scroll_x_min,
266 scroll_x_max,
267 scroll_y,
268 scroll_y_min,
269 scroll_y_max,
271 // Editable text attributes.
272 text_sel_start,
273 text_sel_end,
275 // Table attributes.
276 table_row_count,
277 table_column_count,
278 table_header_id,
280 // Table row attributes.
281 table_row_index,
282 table_row_header_id,
284 // Table column attributes.
285 table_column_index,
286 table_column_header_id,
288 // Table cell attributes.
289 table_cell_column_index,
290 table_cell_column_span,
291 table_cell_row_index,
292 table_cell_row_span,
293 sort_direction,
295 // Tree control attributes.
296 hierarchical_level,
298 // Relationships between this element and other elements.
299 title_ui_element,
300 activedescendant_id,
302 // Color value for AX_ROLE_COLOR_WELL, each component is 0..255
303 color_value_red,
304 color_value_green,
305 color_value_blue,
307 // Inline text attributes.
308 text_direction,
310 // Uniquely identifies an AXTree.
311 tree_id,
313 // Identifies a child tree which this node hosts.
314 child_tree_id,
316 // Indicates if a form control has invalid input or
317 // if an element has an aria-invalid attribute.
318 invalid_state
321 [cpp_enum_prefix_override="ax_attr"] enum AXFloatAttribute {
322 // Document attributes.
323 doc_loading_progress,
325 // Range attributes.
326 value_for_range,
327 min_value_for_range,
328 max_value_for_range
331 [cpp_enum_prefix_override="ax_attr"] enum AXBoolAttribute {
332 // Document attributes.
333 doc_loaded,
335 // True if a checkbox or radio button is in the "mixed" state.
336 button_mixed,
338 // Live region attributes.
339 container_live_atomic,
340 container_live_busy,
341 live_atomic,
342 live_busy,
344 // ARIA readonly flag.
345 aria_readonly,
347 // Writeable attributes
348 can_set_value,
350 // If this is set, all of the other fields in this struct should
351 // be ignored and only the locations should change.
352 update_location_only,
354 // Set on a canvas element if it has fallback content.
355 canvas_has_fallback,
357 // Set if this node is the host of an external AXTree, for
358 // example a web view that's a child of a native view, or a
359 // web iframe that's the child of another web frame.
360 is_ax_tree_host,
362 // Set if this node has been selected for dragging in
363 // a drag-n-drop operation.
364 grabbed
367 [cpp_enum_prefix_override="ax_attr"] enum AXIntListAttribute {
368 // Ids of nodes that are children of this node logically, but are
369 // not children of this node in the tree structure. As an example,
370 // a table cell is a child of a row, and an 'indirect' child of a
371 // column.
372 indirect_child_ids,
374 // Relationships between this element and other elements.
375 controls_ids,
376 describedby_ids,
377 flowto_ids,
378 labelledby_ids,
379 owns_ids,
381 // Character indices where line breaks occur.
382 line_breaks,
384 // For a table, the cell ids in row-major order, with duplicate entries
385 // when there's a rowspan or colspan, and with -1 for missing cells.
386 // There are always exactly rows * columns entries.
387 cell_ids,
389 // For a table, the unique cell ids in row-major order of their first
390 // occurrence.
391 unique_cell_ids,
393 // For inline text. This is the pixel position of the end of this
394 // character within the bounding rectangle of this object, in the
395 // direction given by AX_ATTR_TEXT_DIRECTION. For example, for left-to-right
396 // text, the first offset is the right coordinate of the first character
397 // within the object's bounds, the second offset is the right coordinate
398 // of the second character, and so on.
399 character_offsets,
401 // For inline text. These int lists must be the same size; they represent
402 // the start and end character index of each word within this text.
403 word_starts,
404 word_ends
407 [cpp_enum_prefix_override="ax"] enum AXTextDirection {
408 text_direction_lr,
409 text_direction_rl,
410 text_direction_tb,
411 text_direction_bt
414 [cpp_enum_prefix_override="ax"] enum AXInvalidState {
415 invalid_state_false,
416 invalid_state_true,
417 invalid_state_spelling,
418 invalid_state_grammar,
419 invalid_state_other
422 [cpp_enum_prefix_override="ax"] enum AXSortDirection {
423 sort_direction_unsorted,
424 sort_direction_ascending,
425 sort_direction_descending,
426 sort_direction_other