Bug 1867925 - Mark some storage-access-api tests as intermittent after wpt-sync....
[gecko.git] / accessible / base / RoleMap.h
blobe0456a7defea383ba8b0fd4ac529918e56964202
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */
5 // clang-format off
6 /**
7 * Usage: declare the macro ROLE()with the following arguments:
8 * ROLE(geckoRole, stringRole, ariaRole, atkRole, macRole, macSubrole, msaaRole, ia2Role, nameRule)
9 */
11 ROLE(NOTHING,
12 "nothing",
13 nullptr,
14 ATK_ROLE_UNKNOWN,
15 NSAccessibilityUnknownRole,
16 NSAccessibilityUnknownSubrole,
17 ROLE_SYSTEM_CLIENT,
18 IA2_ROLE_UNKNOWN,
19 java::SessionAccessibility::CLASSNAME_VIEW,
20 eNameFromSubtreeIfReqRule)
22 ROLE(MENUBAR,
23 "menubar",
24 nsGkAtoms::menubar,
25 ATK_ROLE_MENU_BAR,
26 NSAccessibilityMenuBarRole, //Irrelevant on OS X; the menubar will always be native and on the top of the screen.
27 NSAccessibilityUnknownSubrole,
28 ROLE_SYSTEM_MENUBAR,
29 ROLE_SYSTEM_MENUBAR,
30 java::SessionAccessibility::CLASSNAME_VIEW,
31 eNoNameRule)
33 ROLE(SCROLLBAR,
34 "scrollbar",
35 nsGkAtoms::scrollbar,
36 ATK_ROLE_SCROLL_BAR,
37 NSAccessibilityScrollBarRole, //We might need to make this its own mozAccessible, to support the children objects (valueindicator, down/up buttons).
38 NSAccessibilityUnknownSubrole,
39 ROLE_SYSTEM_SCROLLBAR,
40 ROLE_SYSTEM_SCROLLBAR,
41 java::SessionAccessibility::CLASSNAME_VIEW,
42 eNameFromValueRule)
44 ROLE(ALERT,
45 "alert",
46 nsGkAtoms::alert,
47 ATK_ROLE_ALERT,
48 NSAccessibilityGroupRole,
49 @"AXApplicationAlert",
50 ROLE_SYSTEM_ALERT,
51 ROLE_SYSTEM_ALERT,
52 java::SessionAccessibility::CLASSNAME_VIEW,
53 eNameFromSubtreeIfReqRule)
55 ROLE(INTERNAL_FRAME,
56 "internal frame",
57 nullptr,
58 ATK_ROLE_INTERNAL_FRAME,
59 NSAccessibilityScrollAreaRole,
60 NSAccessibilityUnknownSubrole,
61 ROLE_SYSTEM_GROUPING,
62 IA2_ROLE_INTERNAL_FRAME,
63 java::SessionAccessibility::CLASSNAME_VIEW,
64 eNoNameRule)
66 ROLE(MENUPOPUP,
67 "menupopup",
68 nsGkAtoms::menu,
69 ATK_ROLE_MENU,
70 NSAccessibilityMenuRole, //The parent of menuitems.
71 NSAccessibilityUnknownSubrole,
72 ROLE_SYSTEM_MENUPOPUP,
73 ROLE_SYSTEM_MENUPOPUP,
74 java::SessionAccessibility::CLASSNAME_VIEW,
75 eNoNameRule)
77 ROLE(MENUITEM,
78 "menuitem",
79 nsGkAtoms::menuitem,
80 ATK_ROLE_MENU_ITEM,
81 NSAccessibilityMenuItemRole,
82 NSAccessibilityUnknownSubrole,
83 ROLE_SYSTEM_MENUITEM,
84 ROLE_SYSTEM_MENUITEM,
85 java::SessionAccessibility::CLASSNAME_MENUITEM,
86 eNameFromSubtreeRule)
88 ROLE(TOOLTIP,
89 "tooltip",
90 nsGkAtoms::tooltip,
91 ATK_ROLE_TOOL_TIP,
92 NSAccessibilityGroupRole,
93 @"AXUserInterfaceTooltip",
94 ROLE_SYSTEM_TOOLTIP,
95 ROLE_SYSTEM_TOOLTIP,
96 java::SessionAccessibility::CLASSNAME_VIEW,
97 eNameFromSubtreeRule)
99 ROLE(APPLICATION,
100 "application",
101 nsGkAtoms::application,
102 ATK_ROLE_EMBEDDED,
103 NSAccessibilityGroupRole, //Unused on OS X. the system will take care of this.
104 @"AXLandmarkApplication",
105 ROLE_SYSTEM_APPLICATION,
106 ROLE_SYSTEM_APPLICATION,
107 java::SessionAccessibility::CLASSNAME_VIEW,
108 eNoNameRule)
110 ROLE(DOCUMENT,
111 "document",
112 nsGkAtoms::document,
113 ATK_ROLE_DOCUMENT_WEB,
114 @"AXWebArea",
115 NSAccessibilityUnknownSubrole,
116 ROLE_SYSTEM_DOCUMENT,
117 ROLE_SYSTEM_DOCUMENT,
118 java::SessionAccessibility::CLASSNAME_VIEW,
119 eNoNameRule)
122 * msaa comment:
123 * We used to map to ROLE_SYSTEM_PANE, but JAWS would
124 * not read the accessible name for the contaning pane.
125 * However, JAWS will read the accessible name for a groupbox.
126 * By mapping a PANE to a GROUPING, we get no undesirable effects,
127 * but fortunately JAWS will then read the group's label,
128 * when an inner control gets focused.
130 ROLE(PANE,
131 "pane",
132 nullptr,
133 ATK_ROLE_PANEL,
134 NSAccessibilityGroupRole,
135 NSAccessibilityUnknownSubrole,
136 ROLE_SYSTEM_GROUPING,
137 ROLE_SYSTEM_GROUPING,
138 java::SessionAccessibility::CLASSNAME_VIEW,
139 eNoNameRule)
141 ROLE(DIALOG,
142 "dialog",
143 nsGkAtoms::dialog,
144 ATK_ROLE_DIALOG,
145 NSAccessibilityGroupRole, //There's a dialog subrole.
146 NSAccessibilityUnknownSubrole,
147 ROLE_SYSTEM_DIALOG,
148 ROLE_SYSTEM_DIALOG,
149 java::SessionAccessibility::CLASSNAME_DIALOG,
150 eNoNameRule)
152 ROLE(GROUPING,
153 "grouping",
154 nsGkAtoms::group,
155 ATK_ROLE_PANEL,
156 NSAccessibilityGroupRole,
157 NSAccessibilityUnknownSubrole,
158 ROLE_SYSTEM_GROUPING,
159 ROLE_SYSTEM_GROUPING,
160 java::SessionAccessibility::CLASSNAME_VIEW,
161 eNameFromSubtreeIfReqRule)
163 ROLE(SEPARATOR,
164 "separator",
165 nsGkAtoms::separator_,
166 ATK_ROLE_SEPARATOR,
167 NSAccessibilitySplitterRole,
168 @"AXContentSeparator",
169 ROLE_SYSTEM_SEPARATOR,
170 ROLE_SYSTEM_SEPARATOR,
171 java::SessionAccessibility::CLASSNAME_VIEW,
172 eNoNameRule)
174 ROLE(TOOLBAR,
175 "toolbar",
176 nsGkAtoms::toolbar,
177 ATK_ROLE_TOOL_BAR,
178 NSAccessibilityToolbarRole,
179 NSAccessibilityUnknownSubrole,
180 ROLE_SYSTEM_TOOLBAR,
181 ROLE_SYSTEM_TOOLBAR,
182 java::SessionAccessibility::CLASSNAME_VIEW,
183 eNoNameRule)
185 ROLE(STATUSBAR,
186 "statusbar",
187 nsGkAtoms::status,
188 ATK_ROLE_STATUSBAR,
189 NSAccessibilityGroupRole,
190 @"AXApplicationStatus",
191 ROLE_SYSTEM_STATUSBAR,
192 ROLE_SYSTEM_STATUSBAR,
193 java::SessionAccessibility::CLASSNAME_VIEW,
194 eNoNameRule)
196 ROLE(TABLE,
197 "table",
198 nsGkAtoms::table,
199 ATK_ROLE_TABLE,
200 NSAccessibilityTableRole,
201 NSAccessibilityUnknownSubrole,
202 ROLE_SYSTEM_TABLE,
203 ROLE_SYSTEM_TABLE,
204 java::SessionAccessibility::CLASSNAME_GRIDVIEW,
205 eNameFromSubtreeIfReqRule)
207 ROLE(COLUMNHEADER,
208 "columnheader",
209 nsGkAtoms::columnheader,
210 ATK_ROLE_COLUMN_HEADER,
211 NSAccessibilityCellRole,
212 NSAccessibilityUnknownSubrole,
213 ROLE_SYSTEM_COLUMNHEADER,
214 ROLE_SYSTEM_COLUMNHEADER,
215 java::SessionAccessibility::CLASSNAME_VIEW,
216 eNameFromSubtreeRule)
218 ROLE(ROWHEADER,
219 "rowheader",
220 nsGkAtoms::rowheader,
221 ATK_ROLE_ROW_HEADER,
222 NSAccessibilityCellRole,
223 NSAccessibilityUnknownSubrole,
224 ROLE_SYSTEM_ROWHEADER,
225 ROLE_SYSTEM_ROWHEADER,
226 java::SessionAccessibility::CLASSNAME_VIEW,
227 eNameFromSubtreeRule)
229 ROLE(ROW,
230 "row",
231 nsGkAtoms::row,
232 ATK_ROLE_TABLE_ROW,
233 NSAccessibilityRowRole,
234 NSAccessibilityUnknownSubrole,
235 ROLE_SYSTEM_ROW,
236 ROLE_SYSTEM_ROW,
237 java::SessionAccessibility::CLASSNAME_VIEW,
238 eNameFromSubtreeRule)
240 ROLE(CELL,
241 "cell",
242 nsGkAtoms::cell,
243 ATK_ROLE_TABLE_CELL,
244 NSAccessibilityCellRole,
245 NSAccessibilityUnknownSubrole,
246 ROLE_SYSTEM_CELL,
247 ROLE_SYSTEM_CELL,
248 java::SessionAccessibility::CLASSNAME_VIEW,
249 eNameFromSubtreeIfReqRule)
251 ROLE(LINK,
252 "link",
253 nsGkAtoms::link,
254 ATK_ROLE_LINK,
255 NSAccessibilityLinkRole,
256 NSAccessibilityUnknownSubrole,
257 ROLE_SYSTEM_LINK,
258 ROLE_SYSTEM_LINK,
259 java::SessionAccessibility::CLASSNAME_VIEW,
260 eNameFromSubtreeRule)
262 ROLE(LIST,
263 "list",
264 nsGkAtoms::list_,
265 ATK_ROLE_LIST,
266 NSAccessibilityListRole,
267 NSAccessibilityContentListSubrole,
268 ROLE_SYSTEM_LIST,
269 ROLE_SYSTEM_LIST,
270 java::SessionAccessibility::CLASSNAME_LISTVIEW,
271 eNameFromSubtreeIfReqRule)
273 ROLE(LISTITEM,
274 "listitem",
275 nsGkAtoms::listitem,
276 ATK_ROLE_LIST_ITEM,
277 NSAccessibilityGroupRole,
278 NSAccessibilityUnknownSubrole,
279 ROLE_SYSTEM_LISTITEM,
280 ROLE_SYSTEM_LISTITEM,
281 java::SessionAccessibility::CLASSNAME_VIEW,
282 eNameFromSubtreeRule)
284 ROLE(OUTLINE,
285 "outline",
286 nsGkAtoms::tree,
287 ATK_ROLE_TREE,
288 NSAccessibilityOutlineRole,
289 NSAccessibilityUnknownSubrole,
290 ROLE_SYSTEM_OUTLINE,
291 ROLE_SYSTEM_OUTLINE,
292 java::SessionAccessibility::CLASSNAME_VIEW,
293 eNoNameRule)
295 ROLE(OUTLINEITEM,
296 "outlineitem",
297 nsGkAtoms::treeitem,
298 ATK_ROLE_TREE_ITEM,
299 NSAccessibilityRowRole,
300 NSAccessibilityOutlineRowSubrole,
301 ROLE_SYSTEM_OUTLINEITEM,
302 ROLE_SYSTEM_OUTLINEITEM,
303 java::SessionAccessibility::CLASSNAME_VIEW,
304 eNameFromSubtreeRule)
306 ROLE(PAGETAB,
307 "pagetab",
308 nsGkAtoms::tab,
309 ATK_ROLE_PAGE_TAB,
310 NSAccessibilityRadioButtonRole,
311 @"AXTabButton", // Can be upgraded to NSAccessibilityTabButtonSubrole in 10.13
312 ROLE_SYSTEM_PAGETAB,
313 ROLE_SYSTEM_PAGETAB,
314 java::SessionAccessibility::CLASSNAME_VIEW,
315 eNameFromSubtreeRule)
317 ROLE(PROPERTYPAGE,
318 "propertypage",
319 nsGkAtoms::tabpanel,
320 ATK_ROLE_SCROLL_PANE,
321 NSAccessibilityGroupRole,
322 @"AXTabPanel",
323 ROLE_SYSTEM_PROPERTYPAGE,
324 ROLE_SYSTEM_PROPERTYPAGE,
325 java::SessionAccessibility::CLASSNAME_VIEW,
326 eNoNameRule)
328 ROLE(GRAPHIC,
329 "graphic",
330 nsGkAtoms::image,
331 ATK_ROLE_IMAGE,
332 NSAccessibilityImageRole,
333 NSAccessibilityUnknownSubrole,
334 ROLE_SYSTEM_GRAPHIC,
335 ROLE_SYSTEM_GRAPHIC,
336 java::SessionAccessibility::CLASSNAME_IMAGE,
337 eNoNameRule)
339 ROLE(STATICTEXT,
340 "statictext",
341 nullptr,
342 ATK_ROLE_UNKNOWN,
343 NSAccessibilityStaticTextRole,
344 NSAccessibilityUnknownSubrole,
345 ROLE_SYSTEM_STATICTEXT,
346 ROLE_SYSTEM_STATICTEXT,
347 java::SessionAccessibility::CLASSNAME_VIEW,
348 eNoNameRule)
350 ROLE(TEXT_LEAF,
351 "text leaf",
352 nullptr,
353 ATK_ROLE_UNKNOWN,
354 NSAccessibilityStaticTextRole,
355 NSAccessibilityUnknownSubrole,
356 ROLE_SYSTEM_TEXT,
357 ROLE_SYSTEM_TEXT,
358 java::SessionAccessibility::CLASSNAME_VIEW,
359 eNoNameRule)
361 ROLE(PUSHBUTTON,
362 "pushbutton",
363 nsGkAtoms::button,
364 ATK_ROLE_PUSH_BUTTON,
365 NSAccessibilityButtonRole,
366 NSAccessibilityUnknownSubrole,
367 ROLE_SYSTEM_PUSHBUTTON,
368 ROLE_SYSTEM_PUSHBUTTON,
369 java::SessionAccessibility::CLASSNAME_BUTTON,
370 eNameFromSubtreeRule)
372 ROLE(CHECKBUTTON,
373 "checkbutton",
374 nsGkAtoms::checkbox,
375 ATK_ROLE_CHECK_BOX,
376 NSAccessibilityCheckBoxRole,
377 NSAccessibilityUnknownSubrole,
378 ROLE_SYSTEM_CHECKBUTTON,
379 ROLE_SYSTEM_CHECKBUTTON,
380 java::SessionAccessibility::CLASSNAME_CHECKBOX,
381 eNameFromSubtreeRule)
383 ROLE(RADIOBUTTON,
384 "radiobutton",
385 nsGkAtoms::radio,
386 ATK_ROLE_RADIO_BUTTON,
387 NSAccessibilityRadioButtonRole,
388 NSAccessibilityUnknownSubrole,
389 ROLE_SYSTEM_RADIOBUTTON,
390 ROLE_SYSTEM_RADIOBUTTON,
391 java::SessionAccessibility::CLASSNAME_RADIOBUTTON,
392 eNameFromSubtreeRule)
394 // Equivalent of HTML select element with size="1". See also EDITCOMBOBOX.
395 ROLE(COMBOBOX,
396 "combobox",
397 nsGkAtoms::combobox,
398 ATK_ROLE_COMBO_BOX,
399 NSAccessibilityPopUpButtonRole,
400 NSAccessibilityUnknownSubrole,
401 ROLE_SYSTEM_COMBOBOX,
402 ROLE_SYSTEM_COMBOBOX,
403 java::SessionAccessibility::CLASSNAME_SPINNER,
404 eNameFromValueRule)
406 ROLE(PROGRESSBAR,
407 "progressbar",
408 nsGkAtoms::progressbar,
409 ATK_ROLE_PROGRESS_BAR,
410 NSAccessibilityProgressIndicatorRole,
411 NSAccessibilityUnknownSubrole,
412 ROLE_SYSTEM_PROGRESSBAR,
413 ROLE_SYSTEM_PROGRESSBAR,
414 java::SessionAccessibility::CLASSNAME_PROGRESSBAR,
415 eNameFromValueRule)
417 ROLE(SLIDER,
418 "slider",
419 nsGkAtoms::slider,
420 ATK_ROLE_SLIDER,
421 NSAccessibilitySliderRole,
422 NSAccessibilityUnknownSubrole,
423 ROLE_SYSTEM_SLIDER,
424 ROLE_SYSTEM_SLIDER,
425 java::SessionAccessibility::CLASSNAME_SEEKBAR,
426 eNameFromValueRule)
428 ROLE(SPINBUTTON,
429 "spinbutton",
430 nsGkAtoms::spinbutton,
431 ATK_ROLE_SPIN_BUTTON,
432 NSAccessibilityIncrementorRole, //Subroles: Increment/Decrement.
433 NSAccessibilityUnknownSubrole,
434 ROLE_SYSTEM_SPINBUTTON,
435 ROLE_SYSTEM_SPINBUTTON,
436 java::SessionAccessibility::CLASSNAME_EDITTEXT,
437 eNameFromValueRule)
439 ROLE(DIAGRAM,
440 "diagram",
441 nsGkAtoms::graphicsDocument,
442 ATK_ROLE_IMAGE,
443 NSAccessibilityImageRole,
444 NSAccessibilityUnknownSubrole,
445 ROLE_SYSTEM_DIAGRAM,
446 ROLE_SYSTEM_DIAGRAM,
447 java::SessionAccessibility::CLASSNAME_IMAGE,
448 eNoNameRule)
450 ROLE(ANIMATION,
451 "animation",
452 nsGkAtoms::marquee,
453 ATK_ROLE_ANIMATION,
454 NSAccessibilityUnknownRole,
455 @"AXApplicationMarquee",
456 ROLE_SYSTEM_ANIMATION,
457 ROLE_SYSTEM_ANIMATION,
458 java::SessionAccessibility::CLASSNAME_VIEW,
459 eNoNameRule)
461 ROLE(BUTTONDROPDOWN,
462 "buttondropdown",
463 nullptr,
464 ATK_ROLE_PUSH_BUTTON,
465 NSAccessibilityPopUpButtonRole,
466 NSAccessibilityUnknownSubrole,
467 ROLE_SYSTEM_BUTTONDROPDOWN,
468 ROLE_SYSTEM_BUTTONDROPDOWN,
469 java::SessionAccessibility::CLASSNAME_VIEW,
470 eNameFromSubtreeRule)
472 ROLE(BUTTONMENU,
473 "buttonmenu",
474 nsGkAtoms::button,
475 ATK_ROLE_PUSH_BUTTON,
476 NSAccessibilityMenuButtonRole,
477 NSAccessibilityUnknownSubrole,
478 ROLE_SYSTEM_BUTTONMENU,
479 ROLE_SYSTEM_BUTTONMENU,
480 java::SessionAccessibility::CLASSNAME_SPINNER,
481 eNameFromSubtreeRule)
483 ROLE(WHITESPACE,
484 "whitespace",
485 nullptr,
486 ATK_ROLE_UNKNOWN,
487 NSAccessibilityUnknownRole,
488 NSAccessibilityUnknownSubrole,
489 ROLE_SYSTEM_WHITESPACE,
490 ROLE_SYSTEM_WHITESPACE,
491 java::SessionAccessibility::CLASSNAME_VIEW,
492 eNoNameRule)
494 ROLE(PAGETABLIST,
495 "pagetablist",
496 nsGkAtoms::tablist,
497 ATK_ROLE_PAGE_TAB_LIST,
498 NSAccessibilityTabGroupRole,
499 NSAccessibilityUnknownSubrole,
500 ROLE_SYSTEM_PAGETABLIST,
501 ROLE_SYSTEM_PAGETABLIST,
502 java::SessionAccessibility::CLASSNAME_TABWIDGET,
503 eNoNameRule)
505 ROLE(CANVAS,
506 "canvas",
507 nullptr,
508 ATK_ROLE_CANVAS,
509 NSAccessibilityImageRole,
510 NSAccessibilityUnknownSubrole,
511 ROLE_SYSTEM_GRAPHIC,
512 IA2_ROLE_CANVAS,
513 java::SessionAccessibility::CLASSNAME_IMAGE,
514 eNoNameRule)
516 ROLE(CHECK_MENU_ITEM,
517 "check menu item",
518 nsGkAtoms::menuitemcheckbox,
519 ATK_ROLE_CHECK_MENU_ITEM,
520 NSAccessibilityMenuItemRole,
521 NSAccessibilityUnknownSubrole,
522 ROLE_SYSTEM_MENUITEM,
523 IA2_ROLE_CHECK_MENU_ITEM,
524 java::SessionAccessibility::CLASSNAME_MENUITEM,
525 eNameFromSubtreeRule)
527 ROLE(DATE_EDITOR,
528 "date editor",
529 nullptr,
530 ATK_ROLE_DATE_EDITOR,
531 @"AXGroup",
532 NSAccessibilityUnknownSubrole,
533 ROLE_SYSTEM_GROUPING,
534 IA2_ROLE_DATE_EDITOR,
535 java::SessionAccessibility::CLASSNAME_SPINNER,
536 eNoNameRule)
538 ROLE(CHROME_WINDOW,
539 "chrome window",
540 nullptr,
541 ATK_ROLE_FRAME,
542 NSAccessibilityGroupRole, //Contains the main Firefox UI
543 NSAccessibilityUnknownSubrole,
544 ROLE_SYSTEM_APPLICATION,
545 IA2_ROLE_FRAME,
546 java::SessionAccessibility::CLASSNAME_VIEW,
547 eNoNameRule)
549 ROLE(LABEL,
550 "label",
551 nullptr,
552 ATK_ROLE_LABEL,
553 NSAccessibilityGroupRole,
554 NSAccessibilityUnknownSubrole,
555 ROLE_SYSTEM_STATICTEXT,
556 IA2_ROLE_LABEL,
557 java::SessionAccessibility::CLASSNAME_VIEW,
558 eNameFromSubtreeRule)
560 ROLE(PASSWORD_TEXT,
561 "password text",
562 nullptr,
563 ATK_ROLE_PASSWORD_TEXT,
564 NSAccessibilityTextFieldRole,
565 NSAccessibilityUnknownSubrole,
566 ROLE_SYSTEM_TEXT,
567 ROLE_SYSTEM_TEXT,
568 java::SessionAccessibility::CLASSNAME_EDITTEXT,
569 eNoNameRule)
571 ROLE(RADIO_MENU_ITEM,
572 "radio menu item",
573 nsGkAtoms::menuitemradio,
574 ATK_ROLE_RADIO_MENU_ITEM,
575 NSAccessibilityMenuItemRole,
576 NSAccessibilityUnknownSubrole,
577 ROLE_SYSTEM_MENUITEM,
578 IA2_ROLE_RADIO_MENU_ITEM,
579 java::SessionAccessibility::CLASSNAME_MENUITEM,
580 eNameFromSubtreeRule)
582 ROLE(TEXT_CONTAINER,
583 "text container",
584 nsGkAtoms::generic,
585 ATK_ROLE_SECTION,
586 NSAccessibilityGroupRole,
587 NSAccessibilityUnknownSubrole,
588 ROLE_SYSTEM_GROUPING,
589 IA2_ROLE_TEXT_FRAME,
590 java::SessionAccessibility::CLASSNAME_VIEW,
591 eNameFromSubtreeIfReqRule)
593 ROLE(TOGGLE_BUTTON,
594 "toggle button",
595 nsGkAtoms::button,
596 ATK_ROLE_TOGGLE_BUTTON,
597 NSAccessibilityCheckBoxRole,
598 NSAccessibilityToggleSubrole,
599 ROLE_SYSTEM_PUSHBUTTON,
600 IA2_ROLE_TOGGLE_BUTTON,
601 java::SessionAccessibility::CLASSNAME_TOGGLEBUTTON,
602 eNameFromSubtreeRule)
604 ROLE(TREE_TABLE,
605 "tree table",
606 nsGkAtoms::treegrid,
607 ATK_ROLE_TREE_TABLE,
608 NSAccessibilityTableRole,
609 NSAccessibilityUnknownSubrole,
610 ROLE_SYSTEM_OUTLINE,
611 ROLE_SYSTEM_OUTLINE,
612 java::SessionAccessibility::CLASSNAME_GRIDVIEW,
613 eNoNameRule)
615 ROLE(PARAGRAPH,
616 "paragraph",
617 nsGkAtoms::paragraph,
618 ATK_ROLE_PARAGRAPH,
619 NSAccessibilityGroupRole,
620 NSAccessibilityUnknownSubrole,
621 ROLE_SYSTEM_GROUPING,
622 IA2_ROLE_PARAGRAPH,
623 java::SessionAccessibility::CLASSNAME_VIEW,
624 eNameFromSubtreeIfReqRule)
626 ROLE(ENTRY,
627 "entry",
628 nsGkAtoms::textbox,
629 ATK_ROLE_ENTRY,
630 NSAccessibilityTextFieldRole,
631 NSAccessibilityUnknownSubrole,
632 ROLE_SYSTEM_TEXT,
633 ROLE_SYSTEM_TEXT,
634 java::SessionAccessibility::CLASSNAME_EDITTEXT,
635 eNameFromValueRule)
637 ROLE(CAPTION,
638 "caption",
639 nsGkAtoms::caption,
640 ATK_ROLE_CAPTION,
641 NSAccessibilityGroupRole,
642 NSAccessibilityUnknownSubrole,
643 ROLE_SYSTEM_GROUPING,
644 IA2_ROLE_CAPTION,
645 java::SessionAccessibility::CLASSNAME_VIEW,
646 eNameFromSubtreeIfReqRule)
648 ROLE(NON_NATIVE_DOCUMENT,
649 "non-native document",
650 nsGkAtoms::document,
651 ATK_ROLE_DOCUMENT_FRAME,
652 NSAccessibilityGroupRole,
653 @"AXDocument",
654 ROLE_SYSTEM_DOCUMENT,
655 ROLE_SYSTEM_DOCUMENT,
656 java::SessionAccessibility::CLASSNAME_VIEW,
657 eNoNameRule)
659 ROLE(HEADING,
660 "heading",
661 nsGkAtoms::heading,
662 ATK_ROLE_HEADING,
663 @"AXHeading",
664 NSAccessibilityUnknownSubrole,
665 ROLE_SYSTEM_GROUPING,
666 IA2_ROLE_HEADING,
667 java::SessionAccessibility::CLASSNAME_VIEW,
668 eNameFromSubtreeRule)
670 ROLE(SECTION,
671 "section",
672 nsGkAtoms::generic,
673 ATK_ROLE_SECTION,
674 NSAccessibilityGroupRole,
675 NSAccessibilityUnknownSubrole,
676 ROLE_SYSTEM_GROUPING,
677 IA2_ROLE_SECTION,
678 java::SessionAccessibility::CLASSNAME_VIEW,
679 eNameFromSubtreeIfReqRule)
681 ROLE(FORM,
682 "form",
683 nsGkAtoms::form,
684 ATK_ROLE_FORM,
685 NSAccessibilityGroupRole,
686 NSAccessibilityUnknownSubrole,
687 ROLE_SYSTEM_GROUPING,
688 IA2_ROLE_FORM,
689 java::SessionAccessibility::CLASSNAME_VIEW,
690 eNoNameRule)
692 ROLE(APP_ROOT,
693 "app root",
694 nullptr,
695 ATK_ROLE_APPLICATION,
696 NSAccessibilityUnknownRole, //Unused on OS X
697 NSAccessibilityUnknownSubrole,
698 ROLE_SYSTEM_APPLICATION,
699 ROLE_SYSTEM_APPLICATION,
700 java::SessionAccessibility::CLASSNAME_VIEW,
701 eNoNameRule)
703 ROLE(PARENT_MENUITEM,
704 "parent menuitem",
705 nsGkAtoms::menuitem,
706 ATK_ROLE_MENU,
707 NSAccessibilityMenuItemRole,
708 NSAccessibilityUnknownSubrole,
709 ROLE_SYSTEM_MENUITEM,
710 ROLE_SYSTEM_MENUITEM,
711 java::SessionAccessibility::CLASSNAME_MENUITEM,
712 eNameFromSubtreeRule)
714 ROLE(COMBOBOX_LIST,
715 "combobox list",
716 nsGkAtoms::listbox,
717 ATK_ROLE_MENU,
718 NSAccessibilityMenuRole,
719 NSAccessibilityUnknownSubrole,
720 ROLE_SYSTEM_LIST,
721 ROLE_SYSTEM_LIST,
722 java::SessionAccessibility::CLASSNAME_VIEW,
723 eNoNameRule)
725 ROLE(COMBOBOX_OPTION,
726 "combobox option",
727 nsGkAtoms::option,
728 ATK_ROLE_MENU_ITEM,
729 NSAccessibilityMenuItemRole,
730 NSAccessibilityUnknownSubrole,
731 ROLE_SYSTEM_LISTITEM,
732 ROLE_SYSTEM_LISTITEM,
733 java::SessionAccessibility::CLASSNAME_MENUITEM,
734 eNameFromSubtreeRule)
736 ROLE(IMAGE_MAP,
737 "image map",
738 nsGkAtoms::img,
739 ATK_ROLE_IMAGE,
740 @"AXImageMap",
741 NSAccessibilityUnknownSubrole,
742 ROLE_SYSTEM_GRAPHIC,
743 ROLE_SYSTEM_GRAPHIC,
744 java::SessionAccessibility::CLASSNAME_IMAGE,
745 eNoNameRule)
747 ROLE(OPTION,
748 "listbox option",
749 nsGkAtoms::option,
750 ATK_ROLE_LIST_ITEM,
751 NSAccessibilityStaticTextRole,
752 NSAccessibilityUnknownSubrole,
753 ROLE_SYSTEM_LISTITEM,
754 ROLE_SYSTEM_LISTITEM,
755 java::SessionAccessibility::CLASSNAME_VIEW,
756 eNameFromSubtreeRule)
758 ROLE(RICH_OPTION,
759 "listbox rich option",
760 nullptr,
761 ATK_ROLE_LIST_ITEM,
762 NSAccessibilityRowRole,
763 NSAccessibilityUnknownSubrole,
764 ROLE_SYSTEM_LISTITEM,
765 ROLE_SYSTEM_LISTITEM,
766 java::SessionAccessibility::CLASSNAME_VIEW,
767 eNameFromSubtreeRule)
769 ROLE(LISTBOX,
770 "listbox",
771 nsGkAtoms::listbox,
772 ATK_ROLE_LIST_BOX,
773 NSAccessibilityListRole,
774 NSAccessibilityUnknownSubrole,
775 ROLE_SYSTEM_LIST,
776 ROLE_SYSTEM_LIST,
777 java::SessionAccessibility::CLASSNAME_LISTVIEW,
778 eNoNameRule)
780 ROLE(FLAT_EQUATION,
781 "flat equation",
782 nsGkAtoms::math,
783 ATK_ROLE_UNKNOWN,
784 NSAccessibilityUnknownRole,
785 @"AXDocumentMath",
786 ROLE_SYSTEM_EQUATION,
787 ROLE_SYSTEM_EQUATION,
788 java::SessionAccessibility::CLASSNAME_VIEW,
789 eNoNameRule)
791 ROLE(GRID_CELL,
792 "gridcell",
793 nsGkAtoms::gridcell,
794 ATK_ROLE_TABLE_CELL,
795 NSAccessibilityCellRole,
796 NSAccessibilityUnknownSubrole,
797 ROLE_SYSTEM_CELL,
798 ROLE_SYSTEM_CELL,
799 java::SessionAccessibility::CLASSNAME_VIEW,
800 eNameFromSubtreeRule)
802 ROLE(NOTE,
803 "note",
804 nsGkAtoms::note_,
805 ATK_ROLE_COMMENT,
806 NSAccessibilityGroupRole,
807 @"AXDocumentNote",
808 ROLE_SYSTEM_GROUPING,
809 IA2_ROLE_NOTE,
810 java::SessionAccessibility::CLASSNAME_VIEW,
811 eNameFromSubtreeIfReqRule)
813 ROLE(FIGURE,
814 "figure",
815 nsGkAtoms::figure,
816 ATK_ROLE_PANEL,
817 NSAccessibilityGroupRole,
818 NSAccessibilityUnknownSubrole,
819 ROLE_SYSTEM_GROUPING,
820 ROLE_SYSTEM_GROUPING,
821 java::SessionAccessibility::CLASSNAME_VIEW,
822 eNoNameRule)
824 ROLE(CHECK_RICH_OPTION,
825 "check rich option",
826 nullptr,
827 ATK_ROLE_CHECK_BOX,
828 NSAccessibilityCheckBoxRole,
829 NSAccessibilityUnknownSubrole,
830 ROLE_SYSTEM_CHECKBUTTON,
831 ROLE_SYSTEM_CHECKBUTTON,
832 java::SessionAccessibility::CLASSNAME_CHECKBOX,
833 eNameFromSubtreeRule)
835 ROLE(DEFINITION_LIST,
836 "definitionlist",
837 nullptr,
838 ATK_ROLE_LIST,
839 NSAccessibilityListRole,
840 @"AXDescriptionList",
841 ROLE_SYSTEM_LIST,
842 ROLE_SYSTEM_LIST,
843 java::SessionAccessibility::CLASSNAME_LISTVIEW,
844 eNameFromSubtreeIfReqRule)
846 ROLE(TERM,
847 "term",
848 nullptr,
849 ATK_ROLE_DESCRIPTION_TERM,
850 NSAccessibilityGroupRole,
851 @"AXTerm",
852 ROLE_SYSTEM_LISTITEM,
853 ROLE_SYSTEM_LISTITEM,
854 java::SessionAccessibility::CLASSNAME_VIEW,
855 eNameFromSubtreeRule)
857 ROLE(DEFINITION,
858 "definition",
859 nullptr,
860 ATK_ROLE_PARAGRAPH,
861 NSAccessibilityGroupRole,
862 @"AXDescription",
863 ROLE_SYSTEM_GROUPING,
864 IA2_ROLE_PARAGRAPH,
865 java::SessionAccessibility::CLASSNAME_VIEW,
866 eNameFromSubtreeRule)
868 ROLE(KEY,
869 "key",
870 nullptr,
871 ATK_ROLE_PUSH_BUTTON,
872 NSAccessibilityButtonRole,
873 NSAccessibilityUnknownSubrole,
874 ROLE_SYSTEM_PUSHBUTTON,
875 ROLE_SYSTEM_PUSHBUTTON,
876 java::SessionAccessibility::CLASSNAME_BUTTON,
877 eNameFromSubtreeRule)
879 ROLE(SWITCH,
880 "switch",
881 nsGkAtoms::svgSwitch,
882 ATK_ROLE_TOGGLE_BUTTON,
883 NSAccessibilityCheckBoxRole,
884 NSAccessibilitySwitchSubrole,
885 ROLE_SYSTEM_CHECKBUTTON,
886 IA2_ROLE_TOGGLE_BUTTON,
887 java::SessionAccessibility::CLASSNAME_CHECKBOX,
888 eNameFromSubtreeRule)
890 ROLE(MATHML_MATH,
891 "math",
892 nsGkAtoms::math,
893 ATK_ROLE_MATH,
894 NSAccessibilityGroupRole,
895 @"AXDocumentMath",
896 ROLE_SYSTEM_EQUATION,
897 ROLE_SYSTEM_EQUATION,
898 java::SessionAccessibility::CLASSNAME_VIEW,
899 eNoNameRule)
901 ROLE(MATHML_IDENTIFIER,
902 "mathml identifier",
903 nullptr,
904 ATK_ROLE_STATIC,
905 NSAccessibilityGroupRole,
906 @"AXMathIdentifier",
908 IA2_ROLE_UNKNOWN,
909 java::SessionAccessibility::CLASSNAME_VIEW,
910 eNameFromSubtreeRule)
912 ROLE(MATHML_NUMBER,
913 "mathml number",
914 nullptr,
915 ATK_ROLE_STATIC,
916 NSAccessibilityGroupRole,
917 @"AXMathNumber",
919 IA2_ROLE_UNKNOWN,
920 java::SessionAccessibility::CLASSNAME_VIEW,
921 eNameFromSubtreeRule)
923 ROLE(MATHML_OPERATOR,
924 "mathml operator",
925 nullptr,
926 ATK_ROLE_STATIC,
927 NSAccessibilityGroupRole,
928 @"AXMathOperator",
929 // XXX: NSAccessibility also uses subroles AXMathSeparatorOperator and
930 // AXMathFenceOperator. We should use the NS_MATHML_OPERATOR_FENCE and
931 // NS_MATHML_OPERATOR_SEPARATOR bits of nsOperatorFlags, but currently they
932 // are only available from the MathML layout code. Hence we just fallback
933 // to subrole AXMathOperator for now.
935 IA2_ROLE_UNKNOWN,
936 java::SessionAccessibility::CLASSNAME_VIEW,
937 eNameFromSubtreeRule)
939 ROLE(MATHML_TEXT,
940 "mathml text",
941 nullptr,
942 ATK_ROLE_STATIC,
943 NSAccessibilityGroupRole,
944 @"AXMathRoot",
946 IA2_ROLE_UNKNOWN,
947 java::SessionAccessibility::CLASSNAME_VIEW,
948 eNameFromSubtreeRule)
950 ROLE(MATHML_STRING_LITERAL,
951 "mathml string literal",
952 nullptr,
953 ATK_ROLE_STATIC,
954 NSAccessibilityGroupRole,
955 NSAccessibilityUnknownSubrole,
957 IA2_ROLE_UNKNOWN,
958 java::SessionAccessibility::CLASSNAME_VIEW,
959 eNameFromSubtreeRule)
961 ROLE(MATHML_GLYPH,
962 "mathml glyph",
963 nullptr,
964 ATK_ROLE_IMAGE,
965 NSAccessibilityGroupRole,
966 NSAccessibilityUnknownSubrole,
968 IA2_ROLE_UNKNOWN,
969 java::SessionAccessibility::CLASSNAME_IMAGE,
970 eNameFromSubtreeRule)
972 ROLE(MATHML_ROW,
973 "mathml row",
974 nullptr,
975 ATK_ROLE_SECTION,
976 NSAccessibilityGroupRole,
977 @"AXMathRow",
979 IA2_ROLE_UNKNOWN,
980 java::SessionAccessibility::CLASSNAME_VIEW,
981 eNoNameRule)
983 ROLE(MATHML_FRACTION,
984 "mathml fraction",
985 nullptr,
986 ATK_ROLE_MATH_FRACTION,
987 NSAccessibilityGroupRole,
988 @"AXMathFraction",
990 IA2_ROLE_UNKNOWN,
991 java::SessionAccessibility::CLASSNAME_VIEW,
992 eNoNameRule)
994 ROLE(MATHML_SQUARE_ROOT,
995 "mathml square root",
996 nullptr,
997 ATK_ROLE_MATH_ROOT,
998 NSAccessibilityGroupRole,
999 @"AXMathSquareRoot",
1001 IA2_ROLE_UNKNOWN,
1002 java::SessionAccessibility::CLASSNAME_VIEW,
1003 eNoNameRule)
1005 ROLE(MATHML_ROOT,
1006 "mathml root",
1007 nullptr,
1008 ATK_ROLE_MATH_ROOT,
1009 NSAccessibilityGroupRole,
1010 @"AXMathRoot",
1012 IA2_ROLE_UNKNOWN,
1013 java::SessionAccessibility::CLASSNAME_VIEW,
1014 eNoNameRule)
1016 ROLE(MATHML_ENCLOSED,
1017 "mathml enclosed",
1018 nullptr,
1019 ATK_ROLE_SECTION,
1020 NSAccessibilityGroupRole,
1021 NSAccessibilityUnknownSubrole,
1023 IA2_ROLE_UNKNOWN,
1024 java::SessionAccessibility::CLASSNAME_VIEW,
1025 eNoNameRule)
1027 ROLE(MATHML_STYLE,
1028 "mathml style",
1029 nullptr,
1030 ATK_ROLE_SECTION,
1031 NSAccessibilityGroupRole,
1032 @"AXMathRow",
1034 IA2_ROLE_UNKNOWN,
1035 java::SessionAccessibility::CLASSNAME_VIEW,
1036 eNoNameRule)
1038 ROLE(MATHML_SUB,
1039 "mathml sub",
1040 nullptr,
1041 ATK_ROLE_SECTION,
1042 NSAccessibilityGroupRole,
1043 @"AXMathSubscriptSuperscript",
1045 IA2_ROLE_UNKNOWN,
1046 java::SessionAccessibility::CLASSNAME_VIEW,
1047 eNoNameRule)
1049 ROLE(MATHML_SUP,
1050 "mathml sup",
1051 nullptr,
1052 ATK_ROLE_SECTION,
1053 NSAccessibilityGroupRole,
1054 @"AXMathSubscriptSuperscript",
1056 IA2_ROLE_UNKNOWN,
1057 java::SessionAccessibility::CLASSNAME_VIEW,
1058 eNoNameRule)
1060 ROLE(MATHML_SUB_SUP,
1061 "mathml sub sup",
1062 nullptr,
1063 ATK_ROLE_SECTION,
1064 NSAccessibilityGroupRole,
1065 @"AXMathSubscriptSuperscript",
1067 IA2_ROLE_UNKNOWN,
1068 java::SessionAccessibility::CLASSNAME_VIEW,
1069 eNoNameRule)
1071 ROLE(MATHML_UNDER,
1072 "mathml under",
1073 nullptr,
1074 ATK_ROLE_SECTION,
1075 NSAccessibilityGroupRole,
1076 @"AXMathUnderOver",
1078 IA2_ROLE_UNKNOWN,
1079 java::SessionAccessibility::CLASSNAME_VIEW,
1080 eNoNameRule)
1082 ROLE(MATHML_OVER,
1083 "mathml over",
1084 nullptr,
1085 ATK_ROLE_SECTION,
1086 NSAccessibilityGroupRole,
1087 @"AXMathUnderOver",
1089 IA2_ROLE_UNKNOWN,
1090 java::SessionAccessibility::CLASSNAME_VIEW,
1091 eNoNameRule)
1093 ROLE(MATHML_UNDER_OVER,
1094 "mathml under over",
1095 nullptr,
1096 ATK_ROLE_SECTION,
1097 NSAccessibilityGroupRole,
1098 @"AXMathUnderOver",
1100 IA2_ROLE_UNKNOWN,
1101 java::SessionAccessibility::CLASSNAME_VIEW,
1102 eNoNameRule)
1104 ROLE(MATHML_MULTISCRIPTS,
1105 "mathml multiscripts",
1106 nullptr,
1107 ATK_ROLE_SECTION,
1108 NSAccessibilityGroupRole,
1109 @"AXMathMultiscript",
1111 IA2_ROLE_UNKNOWN,
1112 java::SessionAccessibility::CLASSNAME_VIEW,
1113 eNoNameRule)
1115 ROLE(MATHML_TABLE,
1116 "mathml table",
1117 nullptr,
1118 ATK_ROLE_TABLE,
1119 NSAccessibilityGroupRole,
1120 @"AXMathTable",
1122 IA2_ROLE_UNKNOWN,
1123 java::SessionAccessibility::CLASSNAME_GRIDVIEW,
1124 eNoNameRule)
1126 ROLE(MATHML_LABELED_ROW,
1127 "mathml labeled row",
1128 nullptr,
1129 ATK_ROLE_TABLE_ROW,
1130 NSAccessibilityGroupRole,
1131 NSAccessibilityUnknownSubrole,
1133 IA2_ROLE_UNKNOWN,
1134 java::SessionAccessibility::CLASSNAME_VIEW,
1135 eNoNameRule)
1137 ROLE(MATHML_TABLE_ROW,
1138 "mathml table row",
1139 nullptr,
1140 ATK_ROLE_TABLE_ROW,
1141 NSAccessibilityGroupRole,
1142 @"AXMathTableRow",
1144 IA2_ROLE_UNKNOWN,
1145 java::SessionAccessibility::CLASSNAME_VIEW,
1146 eNoNameRule)
1148 ROLE(MATHML_CELL,
1149 "mathml cell",
1150 nullptr,
1151 ATK_ROLE_TABLE_CELL,
1152 NSAccessibilityGroupRole,
1153 @"AXMathTableCell",
1155 IA2_ROLE_UNKNOWN,
1156 java::SessionAccessibility::CLASSNAME_VIEW,
1157 eNoNameRule)
1159 ROLE(MATHML_ACTION,
1160 "mathml action",
1161 nullptr,
1162 ATK_ROLE_SECTION,
1163 NSAccessibilityGroupRole,
1164 NSAccessibilityUnknownSubrole,
1166 IA2_ROLE_UNKNOWN,
1167 java::SessionAccessibility::CLASSNAME_VIEW,
1168 eNoNameRule)
1170 ROLE(MATHML_ERROR,
1171 "mathml error",
1172 nullptr,
1173 ATK_ROLE_SECTION,
1174 NSAccessibilityGroupRole,
1175 @"AXMathRow",
1177 IA2_ROLE_UNKNOWN,
1178 java::SessionAccessibility::CLASSNAME_VIEW,
1179 eNoNameRule)
1181 ROLE(MATHML_STACK,
1182 "mathml stack",
1183 nullptr,
1184 ATK_ROLE_UNKNOWN,
1185 NSAccessibilityGroupRole,
1186 NSAccessibilityUnknownSubrole,
1188 IA2_ROLE_UNKNOWN,
1189 java::SessionAccessibility::CLASSNAME_VIEW,
1190 eNoNameRule)
1192 ROLE(MATHML_LONG_DIVISION,
1193 "mathml long division",
1194 nullptr,
1195 ATK_ROLE_UNKNOWN,
1196 NSAccessibilityGroupRole,
1197 NSAccessibilityUnknownSubrole,
1199 IA2_ROLE_UNKNOWN,
1200 java::SessionAccessibility::CLASSNAME_VIEW,
1201 eNoNameRule)
1203 ROLE(MATHML_STACK_GROUP,
1204 "mathml stack group",
1205 nullptr,
1206 ATK_ROLE_UNKNOWN,
1207 NSAccessibilityGroupRole,
1208 NSAccessibilityUnknownSubrole,
1210 IA2_ROLE_UNKNOWN,
1211 java::SessionAccessibility::CLASSNAME_VIEW,
1212 eNoNameRule)
1214 ROLE(MATHML_STACK_ROW,
1215 "mathml stack row",
1216 nullptr,
1217 ATK_ROLE_UNKNOWN,
1218 NSAccessibilityGroupRole,
1219 NSAccessibilityUnknownSubrole,
1221 IA2_ROLE_UNKNOWN,
1222 java::SessionAccessibility::CLASSNAME_VIEW,
1223 eNoNameRule)
1225 ROLE(MATHML_STACK_CARRIES,
1226 "mathml stack carries",
1227 nullptr,
1228 ATK_ROLE_UNKNOWN,
1229 NSAccessibilityGroupRole,
1230 NSAccessibilityUnknownSubrole,
1232 IA2_ROLE_UNKNOWN,
1233 java::SessionAccessibility::CLASSNAME_VIEW,
1234 eNoNameRule)
1236 ROLE(MATHML_STACK_CARRY,
1237 "mathml stack carry",
1238 nullptr,
1239 ATK_ROLE_UNKNOWN,
1240 NSAccessibilityGroupRole,
1241 NSAccessibilityUnknownSubrole,
1243 IA2_ROLE_UNKNOWN,
1244 java::SessionAccessibility::CLASSNAME_VIEW,
1245 eNoNameRule)
1247 ROLE(MATHML_STACK_LINE,
1248 "mathml stack line",
1249 nullptr,
1250 ATK_ROLE_UNKNOWN,
1251 NSAccessibilityGroupRole,
1252 NSAccessibilityUnknownSubrole,
1254 IA2_ROLE_UNKNOWN,
1255 java::SessionAccessibility::CLASSNAME_VIEW,
1256 eNoNameRule)
1258 ROLE(RADIO_GROUP,
1259 "grouping",
1260 nsGkAtoms::radiogroup,
1261 ATK_ROLE_PANEL,
1262 NSAccessibilityRadioGroupRole,
1263 NSAccessibilityUnknownSubrole,
1264 ROLE_SYSTEM_GROUPING,
1265 ROLE_SYSTEM_GROUPING,
1266 java::SessionAccessibility::CLASSNAME_VIEW,
1267 eNoNameRule)
1269 ROLE(TEXT,
1270 "text",
1271 nsGkAtoms::generic,
1272 ATK_ROLE_STATIC,
1273 NSAccessibilityGroupRole,
1274 NSAccessibilityUnknownSubrole,
1275 ROLE_SYSTEM_GROUPING,
1276 IA2_ROLE_TEXT_FRAME,
1277 java::SessionAccessibility::CLASSNAME_VIEW,
1278 eNameFromSubtreeIfReqRule)
1280 ROLE(DETAILS,
1281 "details",
1282 nsGkAtoms::group,
1283 ATK_ROLE_PANEL,
1284 NSAccessibilityGroupRole,
1285 @"AXDetails",
1286 ROLE_SYSTEM_GROUPING,
1287 ROLE_SYSTEM_GROUPING,
1288 java::SessionAccessibility::CLASSNAME_VIEW,
1289 eNoNameRule)
1291 ROLE(SUMMARY,
1292 "summary",
1293 nullptr,
1294 ATK_ROLE_PUSH_BUTTON,
1295 NSAccessibilityButtonRole,
1296 @"AXSummary",
1297 ROLE_SYSTEM_PUSHBUTTON,
1298 ROLE_SYSTEM_PUSHBUTTON,
1299 java::SessionAccessibility::CLASSNAME_BUTTON,
1300 eNameFromSubtreeRule)
1302 ROLE(LANDMARK,
1303 "landmark",
1304 nullptr,
1305 ATK_ROLE_LANDMARK,
1306 NSAccessibilityGroupRole,
1307 NSAccessibilityUnknownSubrole,
1308 ROLE_SYSTEM_GROUPING,
1309 IA2_ROLE_LANDMARK,
1310 java::SessionAccessibility::CLASSNAME_VIEW,
1311 eNoNameRule)
1313 ROLE(NAVIGATION,
1314 "navigation",
1315 nullptr,
1316 ATK_ROLE_LANDMARK,
1317 NSAccessibilityGroupRole,
1318 @"AXLandmarkNavigation",
1319 ROLE_SYSTEM_GROUPING,
1320 IA2_ROLE_LANDMARK,
1321 java::SessionAccessibility::CLASSNAME_VIEW,
1322 eNoNameRule)
1324 ROLE(FOOTNOTE,
1325 "footnote",
1326 nullptr,
1327 ATK_ROLE_FOOTNOTE,
1328 NSAccessibilityGroupRole,
1329 NSAccessibilityUnknownSubrole,
1330 ROLE_SYSTEM_GROUPING,
1331 IA2_ROLE_FOOTNOTE,
1332 java::SessionAccessibility::CLASSNAME_VIEW,
1333 eNoNameRule)
1335 ROLE(ARTICLE,
1336 "article",
1337 nsGkAtoms::article,
1338 ATK_ROLE_ARTICLE,
1339 NSAccessibilityGroupRole,
1340 @"AXDocumentArticle",
1341 ROLE_SYSTEM_DOCUMENT,
1342 ROLE_SYSTEM_DOCUMENT,
1343 java::SessionAccessibility::CLASSNAME_VIEW,
1344 eNoNameRule)
1346 ROLE(REGION,
1347 "region",
1348 nsGkAtoms::region,
1349 ATK_ROLE_LANDMARK,
1350 NSAccessibilityGroupRole,
1351 @"AXLandmarkRegion",
1352 ROLE_SYSTEM_GROUPING,
1353 IA2_ROLE_LANDMARK,
1354 java::SessionAccessibility::CLASSNAME_VIEW,
1355 eNoNameRule)
1357 // A composite widget with a text input and popup. Used for ARIA role combobox.
1358 // See also COMBOBOX.
1359 ROLE(EDITCOMBOBOX,
1360 "editcombobox",
1361 nsGkAtoms::combobox,
1362 ATK_ROLE_COMBO_BOX,
1363 NSAccessibilityComboBoxRole,
1364 NSAccessibilityUnknownSubrole,
1365 ROLE_SYSTEM_COMBOBOX,
1366 ROLE_SYSTEM_COMBOBOX,
1367 java::SessionAccessibility::CLASSNAME_EDITTEXT,
1368 eNameFromValueRule)
1370 ROLE(BLOCKQUOTE,
1371 "blockquote",
1372 nsGkAtoms::blockquote,
1373 ATK_ROLE_BLOCK_QUOTE,
1374 NSAccessibilityGroupRole,
1375 NSAccessibilityUnknownSubrole,
1376 ROLE_SYSTEM_GROUPING,
1377 IA2_ROLE_BLOCK_QUOTE,
1378 java::SessionAccessibility::CLASSNAME_VIEW,
1379 eNoNameRule)
1381 ROLE(CONTENT_DELETION,
1382 "content deletion",
1383 nsGkAtoms::deletion,
1384 ATK_ROLE_CONTENT_DELETION,
1385 NSAccessibilityGroupRole,
1386 @"AXDeleteStyleGroup",
1387 ROLE_SYSTEM_GROUPING,
1388 IA2_ROLE_CONTENT_DELETION,
1389 java::SessionAccessibility::CLASSNAME_VIEW,
1390 eNameFromSubtreeIfReqRule)
1392 ROLE(CONTENT_INSERTION,
1393 "content insertion",
1394 nsGkAtoms::insertion,
1395 ATK_ROLE_CONTENT_INSERTION,
1396 NSAccessibilityGroupRole,
1397 @"AXInsertStyleGroup",
1398 ROLE_SYSTEM_GROUPING,
1399 IA2_ROLE_CONTENT_INSERTION,
1400 java::SessionAccessibility::CLASSNAME_VIEW,
1401 eNameFromSubtreeIfReqRule)
1403 ROLE(FORM_LANDMARK,
1404 "form",
1405 nsGkAtoms::form,
1406 ATK_ROLE_LANDMARK,
1407 NSAccessibilityGroupRole,
1408 @"AXLandmarkForm",
1409 ROLE_SYSTEM_GROUPING,
1410 IA2_ROLE_FORM,
1411 java::SessionAccessibility::CLASSNAME_VIEW,
1412 eNoNameRule)
1414 ROLE(MARK,
1415 "mark",
1416 nsGkAtoms::mark,
1417 ATK_ROLE_MARK,
1418 NSAccessibilityGroupRole,
1419 NSAccessibilityUnknownSubrole,
1420 ROLE_SYSTEM_GROUPING,
1421 IA2_ROLE_MARK,
1422 java::SessionAccessibility::CLASSNAME_VIEW,
1423 eNameFromSubtreeIfReqRule)
1425 ROLE(SUGGESTION,
1426 "suggestion",
1427 nsGkAtoms::suggestion,
1428 ATK_ROLE_SUGGESTION,
1429 NSAccessibilityGroupRole,
1430 NSAccessibilityUnknownSubrole,
1431 ROLE_SYSTEM_GROUPING,
1432 IA2_ROLE_SUGGESTION,
1433 java::SessionAccessibility::CLASSNAME_VIEW,
1434 eNoNameRule)
1436 ROLE(COMMENT,
1437 "comment",
1438 nsGkAtoms::comment,
1439 ATK_ROLE_COMMENT,
1440 NSAccessibilityGroupRole,
1441 NSAccessibilityUnknownSubrole,
1442 ROLE_SYSTEM_GROUPING,
1443 IA2_ROLE_COMMENT,
1444 java::SessionAccessibility::CLASSNAME_VIEW,
1445 eNoNameRule)
1447 ROLE(CODE,
1448 "code",
1449 nsGkAtoms::code,
1450 ATK_ROLE_STATIC,
1451 NSAccessibilityGroupRole,
1452 @"AXCodeStyleGroup",
1453 ROLE_SYSTEM_GROUPING,
1454 IA2_ROLE_TEXT_FRAME,
1455 java::SessionAccessibility::CLASSNAME_VIEW,
1456 eNameFromSubtreeIfReqRule)
1458 ROLE(TIME_EDITOR,
1459 "time editor",
1460 nullptr,
1461 ATK_ROLE_PANEL,
1462 @"AXTimeField",
1463 NSAccessibilityUnknownSubrole,
1464 ROLE_SYSTEM_GROUPING,
1465 ROLE_SYSTEM_GROUPING,
1466 java::SessionAccessibility::CLASSNAME_VIEW,
1467 eNameFromSubtreeIfReqRule)
1469 ROLE(LISTITEM_MARKER,
1470 "list item marker",
1471 nullptr,
1472 ATK_ROLE_UNKNOWN,
1473 @"AXListMarker",
1474 NSAccessibilityUnknownSubrole,
1475 ROLE_SYSTEM_STATICTEXT,
1476 ROLE_SYSTEM_STATICTEXT,
1477 java::SessionAccessibility::CLASSNAME_VIEW,
1478 eNoNameRule)
1480 ROLE(METER,
1481 "meter",
1482 nsGkAtoms::meter,
1483 ATK_ROLE_LEVEL_BAR,
1484 NSAccessibilityLevelIndicatorRole,
1485 @"AXMeter",
1486 ROLE_SYSTEM_PROGRESSBAR,
1487 ROLE_SYSTEM_PROGRESSBAR,
1488 java::SessionAccessibility::CLASSNAME_VIEW,
1489 eNameFromValueRule)
1491 ROLE(SUBSCRIPT,
1492 "subscript",
1493 nsGkAtoms::subscript,
1494 ATK_ROLE_SUBSCRIPT,
1495 NSAccessibilityGroupRole,
1496 @"AXSubscriptStyleGroup",
1497 ROLE_SYSTEM_GROUPING,
1498 IA2_ROLE_TEXT_FRAME,
1499 java::SessionAccessibility::CLASSNAME_VIEW,
1500 eNameFromSubtreeIfReqRule)
1502 ROLE(SUPERSCRIPT,
1503 "superscript",
1504 nsGkAtoms::superscript,
1505 ATK_ROLE_SUPERSCRIPT,
1506 NSAccessibilityGroupRole,
1507 @"AXSuperscriptStyleGroup",
1508 ROLE_SYSTEM_GROUPING,
1509 IA2_ROLE_TEXT_FRAME,
1510 java::SessionAccessibility::CLASSNAME_VIEW,
1511 eNameFromSubtreeIfReqRule)
1512 // clang-format on