Home | History | Annotate | Download | only in web
      1 /*
      2  * Copyright (C) 2013 Google Inc. All rights reserved.
      3  *
      4  * Redistribution and use in source and binary forms, with or without
      5  * modification, are permitted provided that the following conditions are
      6  * met:
      7  *
      8  *     * Redistributions of source code must retain the above copyright
      9  * notice, this list of conditions and the following disclaimer.
     10  *     * Redistributions in binary form must reproduce the above
     11  * copyright notice, this list of conditions and the following disclaimer
     12  * in the documentation and/or other materials provided with the
     13  * distribution.
     14  *     * Neither the name of Google Inc. nor the names of its
     15  * contributors may be used to endorse or promote products derived from
     16  * this software without specific prior written permission.
     17  *
     18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
     23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     29  */
     30 
     31 #ifndef WebAXEnums_h
     32 #define WebAXEnums_h
     33 
     34 namespace blink {
     35 
     36 // Accessibility events sent from Blink to the embedder.
     37 // These values must match WebCore::AXObjectCache::AXNotification values.
     38 // Enforced in AssertMatchingEnums.cpp.
     39 enum WebAXEvent {
     40     WebAXEventActiveDescendantChanged,
     41     WebAXEventAlert,
     42     WebAXEventAriaAttributeChanged,
     43     WebAXEventAutocorrectionOccured,
     44     WebAXEventBlur,
     45     WebAXEventCheckedStateChanged,
     46     WebAXEventChildrenChanged,
     47     WebAXEventFocus,
     48     WebAXEventHide,
     49     WebAXEventInvalidStatusChanged,
     50     WebAXEventLayoutComplete,
     51     WebAXEventLiveRegionChanged,
     52     WebAXEventLoadComplete,
     53     WebAXEventLocationChanged,
     54     WebAXEventMenuListItemSelected,
     55     WebAXEventMenuListValueChanged,
     56     WebAXEventRowCollapsed,
     57     WebAXEventRowCountChanged,
     58     WebAXEventRowExpanded,
     59     WebAXEventScrolledToAnchor,
     60     WebAXEventSelectedChildrenChanged,
     61     WebAXEventSelectedTextChanged,
     62     WebAXEventShow,
     63     WebAXEventTextChanged,
     64     WebAXEventTextInserted,
     65     WebAXEventTextRemoved,
     66     WebAXEventValueChanged
     67 };
     68 
     69 // Accessibility roles.
     70 // These values must match WebCore::AccessibilityRole values.
     71 // Enforced in AssertMatchingEnums.cpp.
     72 enum WebAXRole {
     73     WebAXRoleAlertDialog = 1,
     74     WebAXRoleAlert,
     75     WebAXRoleAnnotation,
     76     WebAXRoleApplication,
     77     WebAXRoleArticle,
     78     WebAXRoleBanner,
     79     WebAXRoleBrowser,
     80     WebAXRoleBusyIndicator,
     81     WebAXRoleButton,
     82     WebAXRoleCanvas,
     83     WebAXRoleCell,
     84     WebAXRoleCheckBox,
     85     WebAXRoleColorWell,
     86     WebAXRoleColumnHeader,
     87     WebAXRoleColumn,
     88     WebAXRoleComboBox,
     89     WebAXRoleComplementary,
     90     WebAXRoleContentInfo,
     91     WebAXRoleDefinition,
     92     WebAXRoleDescriptionListDetail,
     93     WebAXRoleDescriptionListTerm,
     94     WebAXRoleDialog,
     95     WebAXRoleDirectory,
     96     WebAXRoleDisclosureTriangle,
     97     WebAXRoleDiv,
     98     WebAXRoleDocument,
     99     WebAXRoleDrawer,
    100     WebAXRoleEditableText,
    101     WebAXRoleFooter,
    102     WebAXRoleForm,
    103     WebAXRoleGrid,
    104     WebAXRoleGroup,
    105     WebAXRoleGrowArea,
    106     WebAXRoleHeading,
    107     WebAXRoleHelpTag,
    108     WebAXRoleHorizontalRule,
    109     WebAXRoleIgnored,
    110     WebAXRoleImageMapLink,
    111     WebAXRoleImageMap,
    112     WebAXRoleImage,
    113     WebAXRoleIncrementor,
    114     WebAXRoleInlineTextBox,
    115     WebAXRoleLabel,
    116     WebAXRoleLegend,
    117     WebAXRoleLink,
    118     WebAXRoleListBoxOption,
    119     WebAXRoleListBox,
    120     WebAXRoleListItem,
    121     WebAXRoleListMarker,
    122     WebAXRoleList,
    123     WebAXRoleLog,
    124     WebAXRoleMain,
    125     WebAXRoleMarquee,
    126     WebAXRoleMathElement,
    127     WebAXRoleMath,
    128     WebAXRoleMatte,
    129     WebAXRoleMenuBar,
    130     WebAXRoleMenuButton,
    131     WebAXRoleMenuItem,
    132     WebAXRoleMenuListOption,
    133     WebAXRoleMenuListPopup,
    134     WebAXRoleMenu,
    135     WebAXRoleNavigation,
    136     WebAXRoleNote,
    137     WebAXRoleOutline,
    138     WebAXRoleParagraph,
    139     WebAXRolePopUpButton,
    140     WebAXRolePresentational,
    141     WebAXRoleProgressIndicator,
    142     WebAXRoleRadioButton,
    143     WebAXRoleRadioGroup,
    144     WebAXRoleRegion,
    145     WebAXRoleRootWebArea,
    146     WebAXRoleRowHeader,
    147     WebAXRoleRow,
    148     WebAXRoleRulerMarker,
    149     WebAXRoleRuler,
    150     WebAXRoleSVGRoot,
    151     WebAXRoleScrollArea,
    152     WebAXRoleScrollBar,
    153     WebAXRoleSeamlessWebArea,
    154     WebAXRoleSearch,
    155     WebAXRoleSheet,
    156     WebAXRoleSlider,
    157     WebAXRoleSliderThumb,
    158     WebAXRoleSpinButtonPart,
    159     WebAXRoleSpinButton,
    160     WebAXRoleSplitGroup,
    161     WebAXRoleSplitter,
    162     WebAXRoleStaticText,
    163     WebAXRoleStatus,
    164     WebAXRoleSystemWide,
    165     WebAXRoleTabGroup,
    166     WebAXRoleTabList,
    167     WebAXRoleTabPanel,
    168     WebAXRoleTab,
    169     WebAXRoleTableHeaderContainer,
    170     WebAXRoleTable,
    171     WebAXRoleTextArea,
    172     WebAXRoleTextField,
    173     WebAXRoleTimer,
    174     WebAXRoleToggleButton,
    175     WebAXRoleToolbar,
    176     WebAXRoleTreeGrid,
    177     WebAXRoleTreeItem,
    178     WebAXRoleTree,
    179     WebAXRoleUnknown,
    180     WebAXRoleUserInterfaceTooltip,
    181     WebAXRoleValueIndicator,
    182     WebAXRoleWebArea,
    183     WebAXRoleWindow,
    184 };
    185 
    186 // Accessibility states, used as a bitmask.
    187 enum WebAXState {
    188     WebAXStateBusy,
    189     WebAXStateChecked,
    190     WebAXStateCollapsed,
    191     WebAXStateEnabled,
    192     WebAXStateExpanded,
    193     WebAXStateFocusable,
    194     WebAXStateFocused,
    195     WebAXStateHaspopup,
    196     WebAXStateHovered,
    197     WebAXStateIndeterminate,
    198     WebAXStateInvisible,
    199     WebAXStateLinked,
    200     WebAXStateMultiselectable,
    201     WebAXStateOffscreen,
    202     WebAXStatePressed,
    203     WebAXStateProtected,
    204     WebAXStateReadonly,
    205     WebAXStateRequired,
    206     WebAXStateSelectable,
    207     WebAXStateSelected,
    208     WebAXStateVertical,
    209     WebAXStateVisited,
    210 };
    211 
    212 // Text direction, only used for role=WebAXRoleInlineTextBox.
    213 enum WebAXTextDirection {
    214     WebAXTextDirectionLR,
    215     WebAXTextDirectionRL,
    216     WebAXTextDirectionTB,
    217     WebAXTextDirectionBT
    218 };
    219 
    220 } // namespace blink
    221 
    222 #endif
    223