Index: content/browser/accessibility/browser_accessibility_cocoa.mm |
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm |
index 8285e9da909c4a573d5f8f09094bdaeb8a071ab3..be9ff5b329df1404dec89c851af00ec0b2e8236d 100644 |
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm |
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm |
@@ -40,149 +40,129 @@ NSString* NSStringForStringAttribute( |
} |
struct MapEntry { |
- AccessibilityNodeData::Role webKitValue; |
+ WebKit::WebAXRole webKitValue; |
NSString* nativeValue; |
}; |
-typedef std::map<AccessibilityNodeData::Role, NSString*> RoleMap; |
+typedef std::map<WebKit::WebAXRole, NSString*> RoleMap; |
// GetState checks the bitmask used in AccessibilityNodeData to check |
// if the given state was set on the accessibility object. |
-bool GetState(BrowserAccessibility* accessibility, int state) { |
+bool GetState(BrowserAccessibility* accessibility, WebKit::WebAXState state) { |
return ((accessibility->state() >> state) & 1); |
} |
RoleMap BuildRoleMap() { |
const MapEntry roles[] = { |
- { AccessibilityNodeData::ROLE_ALERT, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_ALERT_DIALOG, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_ANNOTATION, NSAccessibilityUnknownRole }, |
- { AccessibilityNodeData::ROLE_APPLICATION, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_ARTICLE, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_BROWSER, NSAccessibilityBrowserRole }, |
- { AccessibilityNodeData::ROLE_BUSY_INDICATOR, |
- NSAccessibilityBusyIndicatorRole }, |
- { AccessibilityNodeData::ROLE_BUTTON, NSAccessibilityButtonRole }, |
- { AccessibilityNodeData::ROLE_CANVAS, NSAccessibilityImageRole }, |
- { AccessibilityNodeData::ROLE_CANVAS_WITH_FALLBACK_CONTENT, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_CELL, @"AXCell" }, |
- { AccessibilityNodeData::ROLE_CHECKBOX, NSAccessibilityCheckBoxRole }, |
- { AccessibilityNodeData::ROLE_COLOR_WELL, NSAccessibilityColorWellRole }, |
- { AccessibilityNodeData::ROLE_COMBO_BOX, NSAccessibilityComboBoxRole }, |
- { AccessibilityNodeData::ROLE_COLUMN, NSAccessibilityColumnRole }, |
- { AccessibilityNodeData::ROLE_COLUMN_HEADER, @"AXCell" }, |
- { AccessibilityNodeData::ROLE_DEFINITION, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DESCRIPTION_LIST_DETAIL, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DESCRIPTION_LIST_TERM, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DIALOG, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DIRECTORY, NSAccessibilityListRole }, |
- { AccessibilityNodeData::ROLE_DISCLOSURE_TRIANGLE, |
- NSAccessibilityDisclosureTriangleRole }, |
- { AccessibilityNodeData::ROLE_DIV, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DOCUMENT, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_DRAWER, NSAccessibilityDrawerRole }, |
- { AccessibilityNodeData::ROLE_EDITABLE_TEXT, NSAccessibilityTextFieldRole }, |
- { AccessibilityNodeData::ROLE_FOOTER, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_FORM, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_GRID, NSAccessibilityGridRole }, |
- { AccessibilityNodeData::ROLE_GROUP, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_GROW_AREA, NSAccessibilityGrowAreaRole }, |
- { AccessibilityNodeData::ROLE_HEADING, @"AXHeading" }, |
- { AccessibilityNodeData::ROLE_HELP_TAG, NSAccessibilityHelpTagRole }, |
- { AccessibilityNodeData::ROLE_HORIZONTAL_RULE, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_IGNORED, NSAccessibilityUnknownRole }, |
- { AccessibilityNodeData::ROLE_IMAGE, NSAccessibilityImageRole }, |
- { AccessibilityNodeData::ROLE_IMAGE_MAP, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_IMAGE_MAP_LINK, NSAccessibilityLinkRole }, |
- { AccessibilityNodeData::ROLE_INCREMENTOR, NSAccessibilityIncrementorRole }, |
- { AccessibilityNodeData::ROLE_LABEL, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_APPLICATION, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_BANNER, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_COMPLEMENTARY, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_CONTENTINFO, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_MAIN, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_NAVIGATION, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LANDMARK_SEARCH, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LINK, NSAccessibilityLinkRole }, |
- { AccessibilityNodeData::ROLE_LIST, NSAccessibilityListRole }, |
- { AccessibilityNodeData::ROLE_LIST_ITEM, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_LIST_MARKER, @"AXListMarker" }, |
- { AccessibilityNodeData::ROLE_LISTBOX, NSAccessibilityListRole }, |
- { AccessibilityNodeData::ROLE_LISTBOX_OPTION, |
- NSAccessibilityStaticTextRole }, |
- { AccessibilityNodeData::ROLE_LOG, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_MARQUEE, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_MATH, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_MATTE, NSAccessibilityMatteRole }, |
- { AccessibilityNodeData::ROLE_MENU, NSAccessibilityMenuRole }, |
- { AccessibilityNodeData::ROLE_MENU_BAR, NSAccessibilityMenuBarRole }, |
- { AccessibilityNodeData::ROLE_MENU_ITEM, NSAccessibilityMenuItemRole }, |
- { AccessibilityNodeData::ROLE_MENU_BUTTON, NSAccessibilityButtonRole }, |
- { AccessibilityNodeData::ROLE_MENU_LIST_OPTION, |
- NSAccessibilityMenuItemRole }, |
- { AccessibilityNodeData::ROLE_MENU_LIST_POPUP, NSAccessibilityUnknownRole }, |
- { AccessibilityNodeData::ROLE_NOTE, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_OUTLINE, NSAccessibilityOutlineRole }, |
- { AccessibilityNodeData::ROLE_PARAGRAPH, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_POPUP_BUTTON, |
- NSAccessibilityPopUpButtonRole }, |
- { AccessibilityNodeData::ROLE_PRESENTATIONAL, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_PROGRESS_INDICATOR, |
- NSAccessibilityProgressIndicatorRole }, |
- { AccessibilityNodeData::ROLE_RADIO_BUTTON, |
- NSAccessibilityRadioButtonRole }, |
- { AccessibilityNodeData::ROLE_RADIO_GROUP, NSAccessibilityRadioGroupRole }, |
- { AccessibilityNodeData::ROLE_REGION, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_ROOT_WEB_AREA, @"AXWebArea" }, |
- { AccessibilityNodeData::ROLE_ROW, NSAccessibilityRowRole }, |
- { AccessibilityNodeData::ROLE_ROW_HEADER, @"AXCell" }, |
- { AccessibilityNodeData::ROLE_RULER, NSAccessibilityRulerRole }, |
- { AccessibilityNodeData::ROLE_RULER_MARKER, |
- NSAccessibilityRulerMarkerRole }, |
+ { WebKit::WebAXRoleAlert, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleAlertDialog, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleAnnotation, NSAccessibilityUnknownRole }, |
+ { WebKit::WebAXRoleApplication, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleArticle, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleBrowser, NSAccessibilityBrowserRole }, |
+ { WebKit::WebAXRoleBusyIndicator, NSAccessibilityBusyIndicatorRole }, |
+ { WebKit::WebAXRoleButton, NSAccessibilityButtonRole }, |
+ { WebKit::WebAXRoleCanvas, NSAccessibilityImageRole }, |
+ { WebKit::WebAXRoleCell, @"AXCell" }, |
+ { WebKit::WebAXRoleCheckBox, NSAccessibilityCheckBoxRole }, |
+ { WebKit::WebAXRoleColorWell, NSAccessibilityColorWellRole }, |
+ { WebKit::WebAXRoleComboBox, NSAccessibilityComboBoxRole }, |
+ { WebKit::WebAXRoleColumn, NSAccessibilityColumnRole }, |
+ { WebKit::WebAXRoleColumnHeader, @"AXCell" }, |
+ { WebKit::WebAXRoleDefinition, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDescriptionListDetail, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDescriptionListTerm, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDialog, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDirectory, NSAccessibilityListRole }, |
+ { WebKit::WebAXRoleDisclosureTriangle, |
+ NSAccessibilityDisclosureTriangleRole }, |
+ { WebKit::WebAXRoleDiv, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDocument, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleDrawer, NSAccessibilityDrawerRole }, |
+ { WebKit::WebAXRoleEditableText, NSAccessibilityTextFieldRole }, |
+ { WebKit::WebAXRoleFooter, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleForm, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleGrid, NSAccessibilityGridRole }, |
+ { WebKit::WebAXRoleGroup, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleGrowArea, NSAccessibilityGrowAreaRole }, |
+ { WebKit::WebAXRoleHeading, @"AXHeading" }, |
+ { WebKit::WebAXRoleHelpTag, NSAccessibilityHelpTagRole }, |
+ { WebKit::WebAXRoleHorizontalRule, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleIgnored, NSAccessibilityUnknownRole }, |
+ { WebKit::WebAXRoleImage, NSAccessibilityImageRole }, |
+ { WebKit::WebAXRoleImageMap, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleImageMapLink, NSAccessibilityLinkRole }, |
+ { WebKit::WebAXRoleIncrementor, NSAccessibilityIncrementorRole }, |
+ { WebKit::WebAXRoleLabel, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleApplication, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleBanner, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleComplementary, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleContentInfo, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleMain, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleNavigation, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleSearch, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleLink, NSAccessibilityLinkRole }, |
+ { WebKit::WebAXRoleList, NSAccessibilityListRole }, |
+ { WebKit::WebAXRoleListItem, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleListMarker, @"AXListMarker" }, |
+ { WebKit::WebAXRoleListBox, NSAccessibilityListRole }, |
+ { WebKit::WebAXRoleListBoxOption, NSAccessibilityStaticTextRole }, |
+ { WebKit::WebAXRoleLog, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleMarquee, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleMath, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleMatte, NSAccessibilityMatteRole }, |
+ { WebKit::WebAXRoleMenu, NSAccessibilityMenuRole }, |
+ { WebKit::WebAXRoleMenuBar, NSAccessibilityMenuBarRole }, |
+ { WebKit::WebAXRoleMenuItem, NSAccessibilityMenuItemRole }, |
+ { WebKit::WebAXRoleMenuButton, NSAccessibilityButtonRole }, |
+ { WebKit::WebAXRoleMenuListOption, NSAccessibilityMenuItemRole }, |
+ { WebKit::WebAXRoleMenuListPopup, NSAccessibilityUnknownRole }, |
+ { WebKit::WebAXRoleNote, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleOutline, NSAccessibilityOutlineRole }, |
+ { WebKit::WebAXRoleParagraph, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRolePopUpButton, NSAccessibilityPopUpButtonRole }, |
+ { WebKit::WebAXRolePresentational, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleProgressIndicator, |
+ NSAccessibilityProgressIndicatorRole }, |
+ { WebKit::WebAXRoleRadioButton, NSAccessibilityRadioButtonRole }, |
+ { WebKit::WebAXRoleRadioGroup, NSAccessibilityRadioGroupRole }, |
+ { WebKit::WebAXRoleRegion, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleRootWebArea, @"AXWebArea" }, |
+ { WebKit::WebAXRoleRow, NSAccessibilityRowRole }, |
+ { WebKit::WebAXRoleRowHeader, @"AXCell" }, |
+ { WebKit::WebAXRoleRuler, NSAccessibilityRulerRole }, |
+ { WebKit::WebAXRoleRulerMarker, NSAccessibilityRulerMarkerRole }, |
// TODO(dtseng): we don't correctly support the attributes for these roles. |
- // { AccessibilityNodeData::ROLE_SCROLLAREA, |
- // NSAccessibilityScrollAreaRole }, |
- { AccessibilityNodeData::ROLE_SCROLLBAR, NSAccessibilityScrollBarRole }, |
- { AccessibilityNodeData::ROLE_SHEET, NSAccessibilitySheetRole }, |
- { AccessibilityNodeData::ROLE_SLIDER, NSAccessibilitySliderRole }, |
- { AccessibilityNodeData::ROLE_SLIDER_THUMB, |
- NSAccessibilityValueIndicatorRole }, |
- { AccessibilityNodeData::ROLE_SPIN_BUTTON, NSAccessibilitySliderRole }, |
- { AccessibilityNodeData::ROLE_SPLITTER, NSAccessibilitySplitterRole }, |
- { AccessibilityNodeData::ROLE_SPLIT_GROUP, NSAccessibilitySplitGroupRole }, |
- { AccessibilityNodeData::ROLE_STATIC_TEXT, NSAccessibilityStaticTextRole }, |
- { AccessibilityNodeData::ROLE_STATUS, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_SVG_ROOT, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_SYSTEM_WIDE, NSAccessibilityUnknownRole }, |
- { AccessibilityNodeData::ROLE_TAB, NSAccessibilityRadioButtonRole }, |
- { AccessibilityNodeData::ROLE_TAB_LIST, NSAccessibilityTabGroupRole }, |
- { AccessibilityNodeData::ROLE_TAB_PANEL, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_TABLE, NSAccessibilityTableRole }, |
- { AccessibilityNodeData::ROLE_TABLE_HEADER_CONTAINER, |
- NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_TAB_GROUP_UNUSED, |
- NSAccessibilityTabGroupRole }, |
- { AccessibilityNodeData::ROLE_TEXTAREA, NSAccessibilityTextAreaRole }, |
- { AccessibilityNodeData::ROLE_TEXT_FIELD, NSAccessibilityTextFieldRole }, |
- { AccessibilityNodeData::ROLE_TIMER, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_TOGGLE_BUTTON, NSAccessibilityButtonRole }, |
- { AccessibilityNodeData::ROLE_TOOLBAR, NSAccessibilityToolbarRole }, |
- { AccessibilityNodeData::ROLE_TOOLTIP, NSAccessibilityGroupRole }, |
- { AccessibilityNodeData::ROLE_TREE, NSAccessibilityOutlineRole }, |
- { AccessibilityNodeData::ROLE_TREE_GRID, NSAccessibilityTableRole }, |
- { AccessibilityNodeData::ROLE_TREE_ITEM, NSAccessibilityRowRole }, |
- { AccessibilityNodeData::ROLE_VALUE_INDICATOR, |
- NSAccessibilityValueIndicatorRole }, |
- { AccessibilityNodeData::ROLE_WEBCORE_LINK, NSAccessibilityLinkRole }, |
- { AccessibilityNodeData::ROLE_WEB_AREA, @"AXWebArea" }, |
- { AccessibilityNodeData::ROLE_WINDOW, NSAccessibilityWindowRole }, |
+ // { WebKit::WebAXRoleScrollArea, NSAccessibilityScrollAreaRole }, |
+ { WebKit::WebAXRoleScrollBar, NSAccessibilityScrollBarRole }, |
+ { WebKit::WebAXRoleSheet, NSAccessibilitySheetRole }, |
+ { WebKit::WebAXRoleSlider, NSAccessibilitySliderRole }, |
+ { WebKit::WebAXRoleSliderThumb, NSAccessibilityValueIndicatorRole }, |
+ { WebKit::WebAXRoleSpinButton, NSAccessibilitySliderRole }, |
+ { WebKit::WebAXRoleSplitter, NSAccessibilitySplitterRole }, |
+ { WebKit::WebAXRoleSplitGroup, NSAccessibilitySplitGroupRole }, |
+ { WebKit::WebAXRoleStaticText, NSAccessibilityStaticTextRole }, |
+ { WebKit::WebAXRoleStatus, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleSVGRoot, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleSystemWide, NSAccessibilityUnknownRole }, |
+ { WebKit::WebAXRoleTab, NSAccessibilityRadioButtonRole }, |
+ { WebKit::WebAXRoleTabList, NSAccessibilityTabGroupRole }, |
+ { WebKit::WebAXRoleTabPanel, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleTable, NSAccessibilityTableRole }, |
+ { WebKit::WebAXRoleTableHeaderContainer, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleTextArea, NSAccessibilityTextAreaRole }, |
+ { WebKit::WebAXRoleTextField, NSAccessibilityTextFieldRole }, |
+ { WebKit::WebAXRoleTimer, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleToggleButton, NSAccessibilityButtonRole }, |
+ { WebKit::WebAXRoleToolbar, NSAccessibilityToolbarRole }, |
+ { WebKit::WebAXRoleUserInterfaceTooltip, NSAccessibilityGroupRole }, |
+ { WebKit::WebAXRoleTree, NSAccessibilityOutlineRole }, |
+ { WebKit::WebAXRoleTreeGrid, NSAccessibilityTableRole }, |
+ { WebKit::WebAXRoleTreeItem, NSAccessibilityRowRole }, |
+ { WebKit::WebAXRoleValueIndicator, NSAccessibilityValueIndicatorRole }, |
+ { WebKit::WebAXRoleLink, NSAccessibilityLinkRole }, |
+ { WebKit::WebAXRoleWebArea, @"AXWebArea" }, |
+ { WebKit::WebAXRoleWindow, NSAccessibilityWindowRole }, |
}; |
RoleMap role_map; |
@@ -193,7 +173,7 @@ RoleMap BuildRoleMap() { |
// A mapping of webkit roles to native roles. |
NSString* NativeRoleFromAccessibilityNodeDataRole( |
- const AccessibilityNodeData::Role& role) { |
+ const WebKit::WebAXRole& role) { |
CR_DEFINE_STATIC_LOCAL(RoleMap, web_accessibility_to_native_role, |
(BuildRoleMap())); |
RoleMap::iterator it = web_accessibility_to_native_role.find(role); |
@@ -205,36 +185,32 @@ NSString* NativeRoleFromAccessibilityNodeDataRole( |
RoleMap BuildSubroleMap() { |
const MapEntry subroles[] = { |
- { AccessibilityNodeData::ROLE_ALERT, @"AXApplicationAlert" }, |
- { AccessibilityNodeData::ROLE_ALERT_DIALOG, @"AXApplicationAlertDialog" }, |
- { AccessibilityNodeData::ROLE_ARTICLE, @"AXDocumentArticle" }, |
- { AccessibilityNodeData::ROLE_DEFINITION, @"AXDefinition" }, |
- { AccessibilityNodeData::ROLE_DESCRIPTION_LIST_DETAIL, @"AXDescription" }, |
- { AccessibilityNodeData::ROLE_DESCRIPTION_LIST_TERM, @"AXTerm" }, |
- { AccessibilityNodeData::ROLE_DIALOG, @"AXApplicationDialog" }, |
- { AccessibilityNodeData::ROLE_DOCUMENT, @"AXDocument" }, |
- { AccessibilityNodeData::ROLE_FOOTER, @"AXLandmarkContentInfo" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_APPLICATION, |
- @"AXLandmarkApplication" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_BANNER, @"AXLandmarkBanner" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_COMPLEMENTARY, |
- @"AXLandmarkComplementary" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_CONTENTINFO, |
- @"AXLandmarkContentInfo" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_MAIN, @"AXLandmarkMain" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_NAVIGATION, |
- @"AXLandmarkNavigation" }, |
- { AccessibilityNodeData::ROLE_LANDMARK_SEARCH, @"AXLandmarkSearch" }, |
- { AccessibilityNodeData::ROLE_LOG, @"AXApplicationLog" }, |
- { AccessibilityNodeData::ROLE_MARQUEE, @"AXApplicationMarquee" }, |
- { AccessibilityNodeData::ROLE_MATH, @"AXDocumentMath" }, |
- { AccessibilityNodeData::ROLE_NOTE, @"AXDocumentNote" }, |
- { AccessibilityNodeData::ROLE_REGION, @"AXDocumentRegion" }, |
- { AccessibilityNodeData::ROLE_STATUS, @"AXApplicationStatus" }, |
- { AccessibilityNodeData::ROLE_TAB_PANEL, @"AXTabPanel" }, |
- { AccessibilityNodeData::ROLE_TIMER, @"AXApplicationTimer" }, |
- { AccessibilityNodeData::ROLE_TOOLTIP, @"AXUserInterfaceTooltip" }, |
- { AccessibilityNodeData::ROLE_TREE_ITEM, NSAccessibilityOutlineRowSubrole }, |
+ { WebKit::WebAXRoleAlert, @"AXApplicationAlert" }, |
+ { WebKit::WebAXRoleAlertDialog, @"AXApplicationAlertDialog" }, |
+ { WebKit::WebAXRoleArticle, @"AXDocumentArticle" }, |
+ { WebKit::WebAXRoleDefinition, @"AXDefinition" }, |
+ { WebKit::WebAXRoleDescriptionListDetail, @"AXDescription" }, |
+ { WebKit::WebAXRoleDescriptionListTerm, @"AXTerm" }, |
+ { WebKit::WebAXRoleDialog, @"AXApplicationDialog" }, |
+ { WebKit::WebAXRoleDocument, @"AXDocument" }, |
+ { WebKit::WebAXRoleFooter, @"AXLandmarkContentInfo" }, |
+ { WebKit::WebAXRoleApplication, @"AXLandmarkApplication" }, |
+ { WebKit::WebAXRoleBanner, @"AXLandmarkBanner" }, |
+ { WebKit::WebAXRoleComplementary, @"AXLandmarkComplementary" }, |
+ { WebKit::WebAXRoleContentInfo, @"AXLandmarkContentInfo" }, |
+ { WebKit::WebAXRoleMain, @"AXLandmarkMain" }, |
+ { WebKit::WebAXRoleNavigation, @"AXLandmarkNavigation" }, |
+ { WebKit::WebAXRoleSearch, @"AXLandmarkSearch" }, |
+ { WebKit::WebAXRoleLog, @"AXApplicationLog" }, |
+ { WebKit::WebAXRoleMarquee, @"AXApplicationMarquee" }, |
+ { WebKit::WebAXRoleMath, @"AXDocumentMath" }, |
+ { WebKit::WebAXRoleNote, @"AXDocumentNote" }, |
+ { WebKit::WebAXRoleRegion, @"AXDocumentRegion" }, |
+ { WebKit::WebAXRoleStatus, @"AXApplicationStatus" }, |
+ { WebKit::WebAXRoleTabPanel, @"AXTabPanel" }, |
+ { WebKit::WebAXRoleTimer, @"AXApplicationTimer" }, |
+ { WebKit::WebAXRoleUserInterfaceTooltip, @"AXUserInterfaceTooltip" }, |
+ { WebKit::WebAXRoleTreeItem, NSAccessibilityOutlineRowSubrole }, |
}; |
RoleMap subrole_map; |
@@ -245,7 +221,7 @@ RoleMap BuildSubroleMap() { |
// A mapping of webkit roles to native subroles. |
NSString* NativeSubroleFromAccessibilityNodeDataRole( |
- const AccessibilityNodeData::Role& role) { |
+ const WebKit::WebAXRole& role) { |
CR_DEFINE_STATIC_LOCAL(RoleMap, web_accessibility_to_native_subrole, |
(BuildSubroleMap())); |
RoleMap::iterator it = web_accessibility_to_native_subrole.find(role); |
@@ -421,8 +397,8 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
- (NSArray*)columnHeaders { |
- if ([self internalRole] != AccessibilityNodeData::ROLE_TABLE && |
- [self internalRole] != AccessibilityNodeData::ROLE_GRID) { |
+ if ([self internalRole] != WebKit::WebAXRoleTable && |
+ [self internalRole] != WebKit::WebAXRoleGrid) { |
return nil; |
} |
@@ -434,14 +410,14 @@ NSDictionary* attributeToMethodNameMap = nil; |
int id = uniqueCellIds[i]; |
BrowserAccessibility* cell = |
browserAccessibility_->manager()->GetFromRendererID(id); |
- if (cell && cell->role() == AccessibilityNodeData::ROLE_COLUMN_HEADER) |
+ if (cell && cell->role() == WebKit::WebAXRoleColumnHeader) |
[ret addObject:cell->ToBrowserAccessibilityCocoa()]; |
} |
return ret; |
} |
- (NSValue*)columnIndexRange { |
- if ([self internalRole] != AccessibilityNodeData::ROLE_CELL) |
+ if ([self internalRole] != WebKit::WebAXRoleCell) |
return nil; |
int column = -1; |
@@ -499,9 +475,9 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
- (NSNumber*)disclosing { |
- if ([self internalRole] == AccessibilityNodeData::ROLE_TREE_ITEM) { |
+ if ([self internalRole] == WebKit::WebAXRoleTreeItem) { |
return [NSNumber numberWithBool: |
- GetState(browserAccessibility_, AccessibilityNodeData::STATE_EXPANDED)]; |
+ GetState(browserAccessibility_, WebKit::WebAXStateExpanded)]; |
} else { |
return nil; |
} |
@@ -514,9 +490,9 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
- (NSNumber*)disclosureLevel { |
- AccessibilityNodeData::Role role = [self internalRole]; |
- if (role == AccessibilityNodeData::ROLE_ROW || |
- role == AccessibilityNodeData::ROLE_TREE_ITEM) { |
+ WebKit::WebAXRole role = [self internalRole]; |
+ if (role == WebKit::WebAXRoleRow || |
+ role == WebKit::WebAXRoleTreeItem) { |
int level = browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_HIERARCHICAL_LEVEL); |
// Mac disclosureLevel is 0-based, but web levels are 1-based. |
@@ -535,8 +511,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSNumber*)enabled { |
return [NSNumber numberWithBool: |
- !GetState(browserAccessibility_, |
- AccessibilityNodeData::STATE_UNAVAILABLE)]; |
+ GetState(browserAccessibility_, WebKit::WebAXStateEnabled)]; |
} |
- (NSNumber*)focused { |
@@ -548,14 +523,14 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (id)header { |
int headerElementId = -1; |
- if ([self internalRole] == AccessibilityNodeData::ROLE_TABLE || |
- [self internalRole] == AccessibilityNodeData::ROLE_GRID) { |
+ if ([self internalRole] == WebKit::WebAXRoleTable || |
+ [self internalRole] == WebKit::WebAXRoleGrid) { |
browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_TABLE_HEADER_ID, &headerElementId); |
- } else if ([self internalRole] == AccessibilityNodeData::ROLE_COLUMN) { |
+ } else if ([self internalRole] == WebKit::WebAXRoleColumn) { |
browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_TABLE_COLUMN_HEADER_ID, &headerElementId); |
- } else if ([self internalRole] == AccessibilityNodeData::ROLE_ROW) { |
+ } else if ([self internalRole] == WebKit::WebAXRoleRow) { |
browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_TABLE_ROW_HEADER_ID, &headerElementId); |
} |
@@ -575,11 +550,11 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
- (NSNumber*)index { |
- if ([self internalRole] == AccessibilityNodeData::ROLE_COLUMN) { |
+ if ([self internalRole] == WebKit::WebAXRoleColumn) { |
int columnIndex = browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_TABLE_COLUMN_INDEX); |
return [NSNumber numberWithInt:columnIndex]; |
- } else if ([self internalRole] == AccessibilityNodeData::ROLE_ROW) { |
+ } else if ([self internalRole] == WebKit::WebAXRoleRow) { |
int rowIndex = browserAccessibility_->GetIntAttribute( |
AccessibilityNodeData::ATTR_TABLE_ROW_INDEX); |
return [NSNumber numberWithInt:rowIndex]; |
@@ -631,10 +606,10 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSString*)orientation { |
// We present a spin button as a vertical slider, with a role description |
// of "spin button". |
- if ([self internalRole] == AccessibilityNodeData::ROLE_SPIN_BUTTON) |
+ if ([self internalRole] == WebKit::WebAXRoleSpinButton) |
return NSAccessibilityVerticalOrientationValue; |
- if (GetState(browserAccessibility_, AccessibilityNodeData::STATE_VERTICAL)) |
+ if (GetState(browserAccessibility_, WebKit::WebAXStateVertical)) |
return NSAccessibilityVerticalOrientationValue; |
else |
return NSAccessibilityHorizontalOrientationValue; |
@@ -672,18 +647,23 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSNumber*)required { |
return [NSNumber numberWithBool: |
- GetState(browserAccessibility_, AccessibilityNodeData::STATE_REQUIRED)]; |
+ GetState(browserAccessibility_, WebKit::WebAXStateRequired)]; |
} |
// Returns an enum indicating the role from browserAccessibility_. |
-- (AccessibilityNodeData::Role)internalRole { |
- return static_cast<AccessibilityNodeData::Role>( |
- browserAccessibility_->role()); |
+- (WebKit::WebAXRole)internalRole { |
+ return static_cast<WebKit::WebAXRole>(browserAccessibility_->role()); |
} |
// Returns a string indicating the NSAccessibility role of this object. |
- (NSString*)role { |
- return NativeRoleFromAccessibilityNodeDataRole([self internalRole]); |
+ WebKit::WebAXRole role = [self internalRole]; |
+ if (role == WebKit::WebAXRoleCanvas && |
+ browserAccessibility_->GetBoolAttribute( |
+ AccessibilityNodeData::ATTR_CANVAS_HAS_FALLBACK)) { |
+ return NSAccessibilityGroupRole; |
+ } |
+ return NativeRoleFromAccessibilityNodeDataRole(role); |
} |
// Returns a string indicating the role description of this object. |
@@ -712,11 +692,10 @@ NSDictionary* attributeToMethodNameMap = nil; |
[role isEqualToString:NSAccessibilityRadioButtonRole]) { |
std::string role; |
if (browserAccessibility_->GetHtmlAttribute("role", &role)) { |
- AccessibilityNodeData::Role internalRole = |
- [self internalRole]; |
- if ((internalRole != AccessibilityNodeData::ROLE_GROUP && |
- internalRole != AccessibilityNodeData::ROLE_LIST_ITEM) || |
- internalRole == AccessibilityNodeData::ROLE_TAB) { |
+ WebKit::WebAXRole internalRole = [self internalRole]; |
+ if ((internalRole != WebKit::WebAXRoleGroup && |
+ internalRole != WebKit::WebAXRoleListItem) || |
+ internalRole == WebKit::WebAXRoleTab) { |
// TODO(dtseng): This is not localized; see crbug/84814. |
return base::SysUTF8ToNSString(role); |
} |
@@ -724,10 +703,10 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
switch([self internalRole]) { |
- case AccessibilityNodeData::ROLE_FOOTER: |
+ case WebKit::WebAXRoleFooter: |
return base::SysUTF16ToNSString(content_client->GetLocalizedString( |
IDS_AX_ROLE_FOOTER)); |
- case AccessibilityNodeData::ROLE_SPIN_BUTTON: |
+ case WebKit::WebAXRoleSpinButton: |
// This control is similar to what VoiceOver calls a "stepper". |
return base::SysUTF16ToNSString(content_client->GetLocalizedString( |
IDS_AX_ROLE_STEPPER)); |
@@ -739,8 +718,8 @@ NSDictionary* attributeToMethodNameMap = nil; |
} |
- (NSArray*)rowHeaders { |
- if ([self internalRole] != AccessibilityNodeData::ROLE_TABLE && |
- [self internalRole] != AccessibilityNodeData::ROLE_GRID) { |
+ if ([self internalRole] != WebKit::WebAXRoleTable && |
+ [self internalRole] != WebKit::WebAXRoleGrid) { |
return nil; |
} |
@@ -752,14 +731,14 @@ NSDictionary* attributeToMethodNameMap = nil; |
int id = uniqueCellIds[i]; |
BrowserAccessibility* cell = |
browserAccessibility_->manager()->GetFromRendererID(id); |
- if (cell && cell->role() == AccessibilityNodeData::ROLE_ROW_HEADER) |
+ if (cell && cell->role() == WebKit::WebAXRoleRowHeader) |
[ret addObject:cell->ToBrowserAccessibilityCocoa()]; |
} |
return ret; |
} |
- (NSValue*)rowIndexRange { |
- if ([self internalRole] != AccessibilityNodeData::ROLE_CELL) |
+ if ([self internalRole] != WebKit::WebAXRoleCell) |
return nil; |
int row = -1; |
@@ -776,13 +755,13 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSArray*)rows { |
NSMutableArray* ret = [[[NSMutableArray alloc] init] autorelease]; |
- if ([self internalRole] == AccessibilityNodeData::ROLE_TABLE|| |
- [self internalRole] == AccessibilityNodeData::ROLE_GRID) { |
+ if ([self internalRole] == WebKit::WebAXRoleTable|| |
+ [self internalRole] == WebKit::WebAXRoleGrid) { |
for (BrowserAccessibilityCocoa* child in [self children]) { |
if ([[child role] isEqualToString:NSAccessibilityRowRole]) |
[ret addObject:child]; |
} |
- } else if ([self internalRole] == AccessibilityNodeData::ROLE_COLUMN) { |
+ } else if ([self internalRole] == WebKit::WebAXRoleColumn) { |
const std::vector<int32>& indirectChildIds = |
browserAccessibility_->GetIntListAttribute( |
AccessibilityNodeData::ATTR_INDIRECT_CHILD_IDS); |
@@ -806,16 +785,16 @@ NSDictionary* attributeToMethodNameMap = nil; |
// Returns a subrole based upon the role. |
- (NSString*) subrole { |
- AccessibilityNodeData::Role browserAccessibilityRole = [self internalRole]; |
- if (browserAccessibilityRole == AccessibilityNodeData::ROLE_TEXT_FIELD && |
- GetState(browserAccessibility_, AccessibilityNodeData::STATE_PROTECTED)) { |
+ WebKit::WebAXRole browserAccessibilityRole = [self internalRole]; |
+ if (browserAccessibilityRole == WebKit::WebAXRoleTextField && |
+ GetState(browserAccessibility_, WebKit::WebAXStateProtected)) { |
return @"AXSecureTextField"; |
} |
NSString* htmlTag = NSStringForStringAttribute( |
browserAccessibility_, AccessibilityNodeData::ATTR_HTML_TAG); |
- if (browserAccessibilityRole == AccessibilityNodeData::ROLE_LIST) { |
+ if (browserAccessibilityRole == WebKit::WebAXRoleList) { |
if ([htmlTag isEqualToString:@"ul"] || |
[htmlTag isEqualToString:@"ol"]) { |
return @"AXContentList"; |
@@ -831,7 +810,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSArray*)tabs { |
NSMutableArray* tabSubtree = [[[NSMutableArray alloc] init] autorelease]; |
- if ([self internalRole] == AccessibilityNodeData::ROLE_TAB) |
+ if ([self internalRole] == WebKit::WebAXRoleTab) |
[tabSubtree addObject:self]; |
for (uint i=0; i < [[self children] count]; ++i) { |
@@ -886,9 +865,9 @@ NSDictionary* attributeToMethodNameMap = nil; |
[role isEqualToString:NSAccessibilityRadioButtonRole]) { |
int value = 0; |
value = GetState( |
- browserAccessibility_, AccessibilityNodeData::STATE_CHECKED) ? 1 : 0; |
+ browserAccessibility_, WebKit::WebAXStateChecked) ? 1 : 0; |
value = GetState( |
- browserAccessibility_, AccessibilityNodeData::STATE_SELECTED) ? |
+ browserAccessibility_, WebKit::WebAXStateSelected) ? |
1 : |
value; |
@@ -956,7 +935,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
- (NSNumber*)visited { |
return [NSNumber numberWithBool: |
- GetState(browserAccessibility_, AccessibilityNodeData::STATE_TRAVERSED)]; |
+ GetState(browserAccessibility_, WebKit::WebAXStateVisited)]; |
} |
- (id)window { |
@@ -1054,8 +1033,8 @@ NSDictionary* attributeToMethodNameMap = nil; |
if ([attribute isEqualToString: |
NSAccessibilityCellForColumnAndRowParameterizedAttribute]) { |
- if ([self internalRole] != AccessibilityNodeData::ROLE_TABLE && |
- [self internalRole] != AccessibilityNodeData::ROLE_GRID) { |
+ if ([self internalRole] != WebKit::WebAXRoleTable && |
+ [self internalRole] != WebKit::WebAXRoleGrid) { |
return nil; |
} |
if (![parameter isKindOfClass:[NSArray self]]) |
@@ -1075,7 +1054,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
i < browserAccessibility_->child_count(); |
++i) { |
BrowserAccessibility* child = browserAccessibility_->GetChild(i); |
- if (child->role() != AccessibilityNodeData::ROLE_ROW) |
+ if (child->role() != WebKit::WebAXRoleRow) |
continue; |
int rowIndex; |
if (!child->GetIntAttribute( |
@@ -1090,7 +1069,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
j < child->child_count(); |
++j) { |
BrowserAccessibility* cell = child->GetChild(j); |
- if (cell->role() != AccessibilityNodeData::ROLE_CELL) |
+ if (cell->role() != WebKit::WebAXRoleCell) |
continue; |
int colIndex; |
if (!cell->GetIntAttribute( |
@@ -1363,7 +1342,7 @@ NSDictionary* attributeToMethodNameMap = nil; |
if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) |
return GetState(browserAccessibility_, |
- AccessibilityNodeData::STATE_FOCUSABLE); |
+ WebKit::WebAXStateFocusable); |
if ([attribute isEqualToString:NSAccessibilityValueAttribute]) { |
return browserAccessibility_->GetBoolAttribute( |
AccessibilityNodeData::ATTR_CAN_SET_VALUE); |