Chromium Code Reviews| Index: webkit/tools/test_shell/accessibility_ui_element.cc |
| diff --git a/webkit/tools/test_shell/accessibility_ui_element.cc b/webkit/tools/test_shell/accessibility_ui_element.cc |
| index 50a70e6cecf16333c48f2caf453455b13f429348..d84084fc45631c97385b8e69de32582cefc9c4fc 100644 |
| --- a/webkit/tools/test_shell/accessibility_ui_element.cc |
| +++ b/webkit/tools/test_shell/accessibility_ui_element.cc |
| @@ -2,199 +2,183 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#include "config.h" |
| - |
| -#include "AccessibilityObject.h" |
| - |
| -#undef LOG |
| - |
| #include "webkit/api/public/WebAccessibilityObject.h" |
| +#include "webkit/api/public/WebCString.h" |
| +#include "webkit/api/public/WebString.h" |
| #include "webkit/glue/glue_util.h" |
| #include "webkit/tools/test_shell/accessibility_ui_element.h" |
| -using namespace WebCore; |
| - |
| +using WebKit::WebString; |
| +using WebKit::WebCString; |
|
darin (slow to review)
2009/10/30 19:37:58
sort
|
| using WebKit::WebAccessibilityObject; |
| - |
| -using webkit_glue::StringToStdString; |
| -using webkit_glue::AccessibilityObjectToWebAccessibilityObject; |
| -using webkit_glue::WebAccessibilityObjectToAccessibilityObject; |
| +using WebKit::WebAccessibilityRole; |
| namespace { |
| -static PassRefPtr<AccessibilityObject> AXObject( |
| - const WebAccessibilityObject& object) { |
| - RefPtr<AccessibilityObject> o = |
| - WebAccessibilityObjectToAccessibilityObject(object); |
| - // Always ask to update the render tree before querying accessibility object. |
| - o->updateBackingStore(); |
| - return o; |
| -} |
| - |
| // Map role value to string, matching Safari/Mac platform implementation to |
| // avoid rebaselining layout tests. |
| -static std::string RoleToString(AccessibilityRole role) { |
| +static std::string RoleToString(WebAccessibilityRole role) { |
| std::string result = "AXRole: AX"; |
| switch (role) { |
| - case ButtonRole: |
| + case WebKit::WebAccessibilityRoleButton: |
| return result.append("Button"); |
| - case RadioButtonRole: |
| + case WebKit::WebAccessibilityRoleRadioButton: |
| return result.append("RadioButton"); |
| - case CheckBoxRole: |
| + case WebKit::WebAccessibilityRoleCheckBox: |
| return result.append("CheckBox"); |
| - case SliderRole: |
| + case WebKit::WebAccessibilityRoleSlider: |
| return result.append("Slider"); |
| - case TabGroupRole: |
| + case WebKit::WebAccessibilityRoleTabGroup: |
| return result.append("TabGroup"); |
| - case TextFieldRole: |
| + case WebKit::WebAccessibilityRoleTextField: |
| return result.append("TextField"); |
| - case StaticTextRole: |
| + case WebKit::WebAccessibilityRoleStaticText: |
| return result.append("StaticText"); |
| - case TextAreaRole: |
| + case WebKit::WebAccessibilityRoleTextArea: |
| return result.append("TextArea"); |
| - case ScrollAreaRole: |
| + case WebKit::WebAccessibilityRoleScrollArea: |
| return result.append("ScrollArea"); |
| - case PopUpButtonRole: |
| + case WebKit::WebAccessibilityRolePopUpButton: |
| return result.append("PopUpButton"); |
| - case MenuButtonRole: |
| + case WebKit::WebAccessibilityRoleMenuButton: |
| return result.append("MenuButton"); |
| - case TableRole: |
| + case WebKit::WebAccessibilityRoleTable: |
| return result.append("Table"); |
| - case ApplicationRole: |
| + case WebKit::WebAccessibilityRoleApplication: |
| return result.append("Application"); |
| - case GroupRole: |
| + case WebKit::WebAccessibilityRoleGroup: |
| return result.append("Group"); |
| - case RadioGroupRole: |
| + case WebKit::WebAccessibilityRoleRadioGroup: |
| return result.append("RadioGroup"); |
| - case ListRole: |
| + case WebKit::WebAccessibilityRoleList: |
| return result.append("List"); |
| - case ScrollBarRole: |
| + case WebKit::WebAccessibilityRoleScrollBar: |
| return result.append("ScrollBar"); |
| - case ValueIndicatorRole: |
| + case WebKit::WebAccessibilityRoleValueIndicator: |
| return result.append("ValueIndicator"); |
| - case ImageRole: |
| + case WebKit::WebAccessibilityRoleImage: |
| return result.append("Image"); |
| - case MenuBarRole: |
| + case WebKit::WebAccessibilityRoleMenuBar: |
| return result.append("MenuBar"); |
| - case MenuRole: |
| + case WebKit::WebAccessibilityRoleMenu: |
| return result.append("Menu"); |
| - case MenuItemRole: |
| + case WebKit::WebAccessibilityRoleMenuItem: |
| return result.append("MenuItem"); |
| - case ColumnRole: |
| + case WebKit::WebAccessibilityRoleColumn: |
| return result.append("Column"); |
| - case RowRole: |
| + case WebKit::WebAccessibilityRoleRow: |
| return result.append("Row"); |
| - case ToolbarRole: |
| + case WebKit::WebAccessibilityRoleToolbar: |
| return result.append("Toolbar"); |
| - case BusyIndicatorRole: |
| + case WebKit::WebAccessibilityRoleBusyIndicator: |
| return result.append("BusyIndicator"); |
| - case ProgressIndicatorRole: |
| + case WebKit::WebAccessibilityRoleProgressIndicator: |
| return result.append("ProgressIndicator"); |
| - case WindowRole: |
| + case WebKit::WebAccessibilityRoleWindow: |
| return result.append("Window"); |
| - case DrawerRole: |
| + case WebKit::WebAccessibilityRoleDrawer: |
| return result.append("Drawer"); |
| - case SystemWideRole: |
| + case WebKit::WebAccessibilityRoleSystemWide: |
| return result.append("SystemWide"); |
| - case OutlineRole: |
| + case WebKit::WebAccessibilityRoleOutline: |
| return result.append("Outline"); |
| - case IncrementorRole: |
| + case WebKit::WebAccessibilityRoleIncrementor: |
| return result.append("Incrementor"); |
| - case BrowserRole: |
| + case WebKit::WebAccessibilityRoleBrowser: |
| return result.append("Browser"); |
| - case ComboBoxRole: |
| + case WebKit::WebAccessibilityRoleComboBox: |
| return result.append("ComboBox"); |
| - case SplitGroupRole: |
| + case WebKit::WebAccessibilityRoleSplitGroup: |
| return result.append("SplitGroup"); |
| - case SplitterRole: |
| + case WebKit::WebAccessibilityRoleSplitter: |
| return result.append("Splitter"); |
| - case ColorWellRole: |
| + case WebKit::WebAccessibilityRoleColorWell: |
| return result.append("ColorWell"); |
| - case GrowAreaRole: |
| + case WebKit::WebAccessibilityRoleGrowArea: |
| return result.append("GrowArea"); |
| - case SheetRole: |
| + case WebKit::WebAccessibilityRoleSheet: |
| return result.append("Sheet"); |
| - case HelpTagRole: |
| + case WebKit::WebAccessibilityRoleHelpTag: |
| return result.append("HelpTag"); |
| - case MatteRole: |
| + case WebKit::WebAccessibilityRoleMatte: |
| return result.append("Matte"); |
| - case RulerRole: |
| + case WebKit::WebAccessibilityRoleRuler: |
| return result.append("Ruler"); |
| - case RulerMarkerRole: |
| + case WebKit::WebAccessibilityRoleRulerMarker: |
| return result.append("RulerMarker"); |
| - case LinkRole: |
| + case WebKit::WebAccessibilityRoleLink: |
| return result.append("Link"); |
| - case DisclosureTriangleRole: |
| + case WebKit::WebAccessibilityRoleDisclosureTriangle: |
| return result.append("DisclosureTriangle"); |
| - case GridRole: |
| + case WebKit::WebAccessibilityRoleGrid: |
| return result.append("Grid"); |
| - case CellRole: |
| + case WebKit::WebAccessibilityRoleCell: |
| return result.append("Cell"); |
| - case ColumnHeaderRole: |
| + case WebKit::WebAccessibilityRoleColumnHeader: |
| return result.append("ColumnHeader"); |
| - case RowHeaderRole: |
| + case WebKit::WebAccessibilityRoleRowHeader: |
| return result.append("RowHeader"); |
| - case WebCoreLinkRole: |
| + case WebKit::WebAccessibilityRoleWebCoreLink: |
| // Maps to Link role. |
| return result.append("Link"); |
| - case ImageMapLinkRole: |
| + case WebKit::WebAccessibilityRoleImageMapLink: |
| return result.append("ImageMapLink"); |
| - case ImageMapRole: |
| + case WebKit::WebAccessibilityRoleImageMap: |
| return result.append("ImageMap"); |
| - case ListMarkerRole: |
| + case WebKit::WebAccessibilityRoleListMarker: |
| return result.append("ListMarker"); |
| - case WebAreaRole: |
| + case WebKit::WebAccessibilityRoleWebArea: |
| return result.append("WebArea"); |
| - case HeadingRole: |
| + case WebKit::WebAccessibilityRoleHeading: |
| return result.append("Heading"); |
| - case ListBoxRole: |
| + case WebKit::WebAccessibilityRoleListBox: |
| return result.append("ListBox"); |
| - case ListBoxOptionRole: |
| + case WebKit::WebAccessibilityRoleListBoxOption: |
| return result.append("ListBoxOption"); |
| - case TableHeaderContainerRole: |
| + case WebKit::WebAccessibilityRoleTableHeaderContainer: |
| return result.append("TableHeaderContainer"); |
| - case DefinitionListTermRole: |
| + case WebKit::WebAccessibilityRoleDefinitionListTerm: |
| return result.append("DefinitionListTerm"); |
| - case DefinitionListDefinitionRole: |
| + case WebKit::WebAccessibilityRoleDefinitionListDefinition: |
| return result.append("DefinitionListDefinition"); |
| - case AnnotationRole: |
| + case WebKit::WebAccessibilityRoleAnnotation: |
| return result.append("Annotation"); |
| - case SliderThumbRole: |
| + case WebKit::WebAccessibilityRoleSliderThumb: |
| return result.append("SliderThumb"); |
| - case LandmarkApplicationRole: |
| + case WebKit::WebAccessibilityRoleLandmarkApplication: |
| return result.append("LandmarkApplication"); |
| - case LandmarkBannerRole: |
| + case WebKit::WebAccessibilityRoleLandmarkBanner: |
| return result.append("LandmarkBanner"); |
| - case LandmarkComplementaryRole: |
| + case WebKit::WebAccessibilityRoleLandmarkComplementary: |
| return result.append("LandmarkComplementary"); |
| - case LandmarkContentInfoRole: |
| + case WebKit::WebAccessibilityRoleLandmarkContentInfo: |
| return result.append("LandmarkContentInfo"); |
| - case LandmarkMainRole: |
| + case WebKit::WebAccessibilityRoleLandmarkMain: |
| return result.append("LandmarkMain"); |
| - case LandmarkNavigationRole: |
| + case WebKit::WebAccessibilityRoleLandmarkNavigation: |
| return result.append("LandmarkNavigation"); |
| - case LandmarkSearchRole: |
| + case WebKit::WebAccessibilityRoleLandmarkSearch: |
| return result.append("LandmarkSearch"); |
| - case ApplicationLogRole: |
| + case WebKit::WebAccessibilityRoleApplicationLog: |
| return result.append("ApplicationLog"); |
| - case ApplicationMarqueeRole: |
| + case WebKit::WebAccessibilityRoleApplicationMarquee: |
| return result.append("ApplicationMarquee"); |
| - case ApplicationStatusRole: |
| + case WebKit::WebAccessibilityRoleApplicationStatus: |
| return result.append("ApplicationStatus"); |
| - case ApplicationTimerRole: |
| + case WebKit::WebAccessibilityRoleApplicationTimer: |
| return result.append("ApplicationTimer"); |
| - case DocumentRole: |
| + case WebKit::WebAccessibilityRoleDocument: |
| return result.append("Document"); |
| - case DocumentArticleRole: |
| + case WebKit::WebAccessibilityRoleDocumentArticle: |
| return result.append("DocumentArticle"); |
| - case DocumentNoteRole: |
| + case WebKit::WebAccessibilityRoleDocumentNote: |
| return result.append("DocumentNote"); |
| - case DocumentRegionRole: |
| + case WebKit::WebAccessibilityRoleDocumentRegion: |
| return result.append("DocumentRegion"); |
| - case UserInterfaceTooltipRole: |
| + case WebKit::WebAccessibilityRoleUserInterfaceTooltip: |
| return result.append("UserInterfaceTooltip"); |
| default: |
| - // Also matches UnknownRole. |
| + // Also matches WebAccessibilityRoleUnknown. |
| return result.append("Unknown"); |
| } |
| } |
| @@ -281,24 +265,17 @@ AccessibilityUIElement::AccessibilityUIElement( |
| AccessibilityUIElement* AccessibilityUIElement::GetChildAtIndex( |
| unsigned index) { |
| - RefPtr<AccessibilityObject> object = AXObject(accessibility_object()); |
| - if (object->children().size() <= index) |
| - return NULL; |
| - |
| - WebAccessibilityObject child = |
| - AccessibilityObjectToWebAccessibilityObject(object->children()[index]); |
| - return factory_->Create(child); |
| + return factory_->Create(accessibility_object().childAt(index)); |
| } |
| std::string AccessibilityUIElement::GetTitle() { |
| - std::string title = StringToStdString(AXObject( |
| - accessibility_object())->title()); |
| + std::string title = accessibility_object().title().utf8(); |
| return title.insert(0, "AXTitle: "); |
| } |
| std::string AccessibilityUIElement::GetDescription() { |
| - std::string description = StringToStdString(AXObject( |
| - accessibility_object())->accessibilityDescription()); |
| + std::string description = |
| + accessibility_object().accessibilityDescription().utf8(); |
| return description.insert(0, "AXDescription: "); |
| } |
| @@ -466,7 +443,7 @@ void AccessibilityUIElement::FallbackCallback(const CppArgumentList &args, |
| void AccessibilityUIElement::ChildrenCountGetterCallback(CppVariant* result) { |
| int count = 1; // Root object always has only one child, the WebView. |
| if (!IsRoot()) |
| - count = AXObject(accessibility_object())->children().size(); |
| + count = accessibility_object().childCount(); |
| result->Set(count); |
| } |
| @@ -475,11 +452,11 @@ void AccessibilityUIElement::DescriptionGetterCallback(CppVariant *result) { |
| } |
| void AccessibilityUIElement::IsEnabledGetterCallback(CppVariant* result) { |
| - result->Set(AXObject(accessibility_object())->isEnabled()); |
| + result->Set(accessibility_object().isEnabled()); |
| } |
| void AccessibilityUIElement::RoleGetterCallback(CppVariant* result) { |
| - result->Set(RoleToString(AXObject(accessibility_object())->roleValue())); |
| + result->Set(RoleToString(accessibility_object().roleValue())); |
| } |
| void AccessibilityUIElement::TitleGetterCallback(CppVariant* result) { |
| @@ -512,6 +489,9 @@ void AccessibilityUIElementList::Clear() { |
| AccessibilityUIElement* AccessibilityUIElementList::Create( |
| const WebAccessibilityObject& object) { |
| + if (object.isNull()) |
| + return NULL; |
| + |
| AccessibilityUIElement* element = new AccessibilityUIElement(object, this); |
| elements_.push_back(element); |
| return element; |