Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(182)

Unified Diff: content/browser/accessibility/browser_accessibility_cocoa.mm

Issue 23651003: Use Blink accessibility enums in Chromium (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);

Powered by Google App Engine
This is Rietveld 408576698