summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-15 23:09:02 +0000
committerdmazzoni@chromium.org <dmazzoni@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-15 23:09:02 +0000
commitcfa516bfbeb5560fd54659067156af66c7a47ae7 (patch)
treeca3e996a10fb7561d5e1849155acefe96650e6cc
parent8d1b9e3e5e52edc8ca6543f2bf6fc0252fa83708 (diff)
downloadchromium_src-cfa516bfbeb5560fd54659067156af66c7a47ae7.zip
chromium_src-cfa516bfbeb5560fd54659067156af66c7a47ae7.tar.gz
chromium_src-cfa516bfbeb5560fd54659067156af66c7a47ae7.tar.bz2
Revert 232429 "This adds support for the InlineTextBox role in t..."
> This adds support for the InlineTextBox role in the AX tree, > and its attributes. > > Depends on this Blink change that adds InlineTextBox support. > https://codereview.chromium.org/23983002/ > > This change only adds support and makes minimal changes to > allow tests to pass. Other changes will take advantage of the > inline text boxes to compute boundsForRange, etc. > > BUG=98977 > > Review URL: https://codereview.chromium.org/25943003 TBR=dmazzoni@chromium.org Review URL: https://codereview.chromium.org/68713008 git-svn-id: svn://svn.chromium.org/chrome/branches/1700/src@235463 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--content/browser/accessibility/accessibility_tree_formatter.cc11
-rw-r--r--content/browser/accessibility/accessibility_tree_formatter.h5
-rw-r--r--content/browser/accessibility/accessibility_tree_formatter_android.cc7
-rw-r--r--content/browser/accessibility/browser_accessibility.cc11
-rw-r--r--content/browser/accessibility/browser_accessibility.h17
-rw-r--r--content/browser/accessibility/browser_accessibility_android.cc20
-rw-r--r--content/browser/accessibility/browser_accessibility_android.h2
-rw-r--r--content/browser/accessibility/browser_accessibility_cocoa.mm19
-rw-r--r--content/browser/accessibility/browser_accessibility_gtk.cc7
-rw-r--r--content/browser/accessibility/browser_accessibility_manager_android.cc16
-rw-r--r--content/browser/accessibility/browser_accessibility_manager_unittest.cc19
-rw-r--r--content/browser/accessibility/browser_accessibility_win.cc20
-rw-r--r--content/browser/accessibility/browser_accessibility_win_unittest.cc2
-rw-r--r--content/common/accessibility_node_data.cc31
-rw-r--r--content/common/accessibility_node_data.h24
-rw-r--r--content/renderer/accessibility/accessibility_node_serializer.cc26
-rw-r--r--content/renderer/accessibility/renderer_accessibility_browsertest.cc16
-rw-r--r--content/renderer/accessibility/renderer_accessibility_complete.cc1
18 files changed, 83 insertions, 171 deletions
diff --git a/content/browser/accessibility/accessibility_tree_formatter.cc b/content/browser/accessibility/accessibility_tree_formatter.cc
index 3e03b80..4368cf1 100644
--- a/content/browser/accessibility/accessibility_tree_formatter.cc
+++ b/content/browser/accessibility/accessibility_tree_formatter.cc
@@ -66,8 +66,10 @@ void AccessibilityTreeFormatter::RecursiveBuildAccessibilityTree(
base::ListValue* children = new base::ListValue;
dict->Set(kChildrenDictAttr, children);
+ if (!IncludeChildren(node))
+ return;
- for (size_t i = 0; i < node.PlatformChildCount(); ++i) {
+ for (size_t i = 0; i < node.children().size(); ++i) {
BrowserAccessibility* child_node = node.children()[i];
base::DictionaryValue* child_dict = new base::DictionaryValue;
children->Append(child_dict);
@@ -91,6 +93,13 @@ void AccessibilityTreeFormatter::RecursiveFormatAccessibilityTree(
}
}
+#if !defined(OS_ANDROID)
+bool AccessibilityTreeFormatter::IncludeChildren(
+ const BrowserAccessibility& node) {
+ return true;
+}
+#endif
+
#if (!defined(OS_WIN) && !defined(OS_MACOSX) && !defined(OS_ANDROID) && \
!defined(TOOLKIT_GTK))
void AccessibilityTreeFormatter::AddProperties(const BrowserAccessibility& node,
diff --git a/content/browser/accessibility/accessibility_tree_formatter.h b/content/browser/accessibility/accessibility_tree_formatter.h
index 006ee9a..3c36b2f 100644
--- a/content/browser/accessibility/accessibility_tree_formatter.h
+++ b/content/browser/accessibility/accessibility_tree_formatter.h
@@ -113,6 +113,11 @@ class CONTENT_EXPORT AccessibilityTreeFormatter {
void AddProperties(const BrowserAccessibility& node,
base::DictionaryValue* dict);
+ // Returns true by default; can be overridden by the platform to
+ // prune some children from the tree when they wouldn't be exposed
+ // natively on that platform.
+ virtual bool IncludeChildren(const BrowserAccessibility& node);
+
string16 FormatCoordinates(const char* name,
const char* x_name,
const char* y_name,
diff --git a/content/browser/accessibility/accessibility_tree_formatter_android.cc b/content/browser/accessibility/accessibility_tree_formatter_android.cc
index ae34ef5..11f4be6 100644
--- a/content/browser/accessibility/accessibility_tree_formatter_android.cc
+++ b/content/browser/accessibility/accessibility_tree_formatter_android.cc
@@ -77,6 +77,13 @@ void AccessibilityTreeFormatter::AddProperties(
dict->SetInteger("item_count", android_node->GetItemCount());
}
+bool AccessibilityTreeFormatter::IncludeChildren(
+ const BrowserAccessibility& node) {
+ const BrowserAccessibilityAndroid* android_node =
+ static_cast<const BrowserAccessibilityAndroid*>(&node);
+ return !android_node->IsLeaf();
+}
+
string16 AccessibilityTreeFormatter::ToString(const DictionaryValue& dict,
const string16& indent) {
string16 line;
diff --git a/content/browser/accessibility/browser_accessibility.cc b/content/browser/accessibility/browser_accessibility.cc
index 231ff9c..e039cc7 100644
--- a/content/browser/accessibility/browser_accessibility.cc
+++ b/content/browser/accessibility/browser_accessibility.cc
@@ -43,14 +43,6 @@ BrowserAccessibility::BrowserAccessibility()
BrowserAccessibility::~BrowserAccessibility() {
}
-bool BrowserAccessibility::PlatformIsLeaf() const {
- return role_ == WebKit::WebAXRoleStaticText || child_count() == 0;
-}
-
-uint32 BrowserAccessibility::PlatformChildCount() const {
- return PlatformIsLeaf() ? 0 : children_.size();
-}
-
void BrowserAccessibility::DetachTree(
std::vector<BrowserAccessibility*>* nodes) {
nodes->push_back(this);
@@ -120,8 +112,7 @@ bool BrowserAccessibility::IsDescendantOf(
return false;
}
-BrowserAccessibility* BrowserAccessibility::PlatformGetChild(
- uint32 child_index) const {
+BrowserAccessibility* BrowserAccessibility::GetChild(uint32 child_index) const {
DCHECK(child_index < children_.size());
return children_[child_index];
}
diff --git a/content/browser/accessibility/browser_accessibility.h b/content/browser/accessibility/browser_accessibility.h
index 4b36bc7..a520751 100644
--- a/content/browser/accessibility/browser_accessibility.h
+++ b/content/browser/accessibility/browser_accessibility.h
@@ -89,21 +89,8 @@ class CONTENT_EXPORT BrowserAccessibility {
// Returns the number of children of this object.
uint32 child_count() const { return children_.size(); }
- // Returns true if this is a leaf node on this platform, meaning any
- // children should not be exposed to this platform's native accessibility
- // layer. Each platform subclass should implement this itself.
- // The definition of a leaf may vary depending on the platform,
- // but a leaf node should never have children that are focusable or
- // that might send notifications.
- virtual bool PlatformIsLeaf() const;
-
- // Returns the number of children of this object, or 0 if PlatformIsLeaf()
- // returns true.
- uint32 PlatformChildCount() const;
-
- // Return a pointer to the child at the given index, or NULL for an
- // invalid index. Returns NULL if PlatformIsLeaf() returns true.
- BrowserAccessibility* PlatformGetChild(uint32 child_index) const;
+ // Return a pointer to the child with the given index.
+ BrowserAccessibility* GetChild(uint32 child_index) const;
// Return the previous sibling of this object, or NULL if it's the first
// child of its parent.
diff --git a/content/browser/accessibility/browser_accessibility_android.cc b/content/browser/accessibility/browser_accessibility_android.cc
index 2227c38..d8899d7 100644
--- a/content/browser/accessibility/browser_accessibility_android.cc
+++ b/content/browser/accessibility/browser_accessibility_android.cc
@@ -24,7 +24,7 @@ bool BrowserAccessibilityAndroid::IsNative() const {
return true;
}
-bool BrowserAccessibilityAndroid::PlatformIsLeaf() const {
+bool BrowserAccessibilityAndroid::IsLeaf() const {
if (child_count() == 0)
return true;
@@ -52,7 +52,7 @@ bool BrowserAccessibilityAndroid::PlatformIsLeaf() const {
if (HasOnlyStaticTextChildren())
return true;
- return BrowserAccessibility::PlatformIsLeaf();
+ return false;
}
bool BrowserAccessibilityAndroid::IsCheckable() const {
@@ -75,7 +75,7 @@ bool BrowserAccessibilityAndroid::IsChecked() const {
}
bool BrowserAccessibilityAndroid::IsClickable() const {
- return (PlatformIsLeaf() && !GetText().empty());
+ return (IsLeaf() && !GetText().empty());
}
bool BrowserAccessibilityAndroid::IsEnabled() const {
@@ -185,8 +185,8 @@ string16 BrowserAccessibilityAndroid::GetText() const {
text = base::UTF8ToUTF16(value());
if (text.empty() && HasOnlyStaticTextChildren()) {
- for (uint32 i = 0; i < PlatformChildCount(); i++) {
- BrowserAccessibility* child = PlatformGetChild(i);
+ for (uint32 i = 0; i < child_count(); i++) {
+ BrowserAccessibility* child = GetChild(i);
text += static_cast<BrowserAccessibilityAndroid*>(child)->GetText();
}
}
@@ -233,7 +233,7 @@ int BrowserAccessibilityAndroid::GetItemCount() const {
switch(role()) {
case WebKit::WebAXRoleList:
case WebKit::WebAXRoleListBox:
- count = PlatformChildCount();
+ count = child_count();
break;
case WebKit::WebAXRoleSlider:
case WebKit::WebAXRoleProgressIndicator: {
@@ -339,8 +339,8 @@ int BrowserAccessibilityAndroid::GetEditableTextLength() const {
}
bool BrowserAccessibilityAndroid::HasFocusableChild() const {
- for (uint32 i = 0; i < PlatformChildCount(); i++) {
- BrowserAccessibility* child = PlatformGetChild(i);
+ for (uint32 i = 0; i < child_count(); i++) {
+ BrowserAccessibility* child = GetChild(i);
if (child->HasState(WebKit::WebAXStateFocusable))
return true;
if (static_cast<BrowserAccessibilityAndroid*>(child)->HasFocusableChild())
@@ -350,8 +350,8 @@ bool BrowserAccessibilityAndroid::HasFocusableChild() const {
}
bool BrowserAccessibilityAndroid::HasOnlyStaticTextChildren() const {
- for (uint32 i = 0; i < PlatformChildCount(); i++) {
- BrowserAccessibility* child = PlatformGetChild(i);
+ for (uint32 i = 0; i < child_count(); i++) {
+ BrowserAccessibility* child = GetChild(i);
if (child->role() != WebKit::WebAXRoleStaticText)
return false;
}
diff --git a/content/browser/accessibility/browser_accessibility_android.h b/content/browser/accessibility/browser_accessibility_android.h
index 7cb979b..8b4ed84 100644
--- a/content/browser/accessibility/browser_accessibility_android.h
+++ b/content/browser/accessibility/browser_accessibility_android.h
@@ -16,7 +16,7 @@ class BrowserAccessibilityAndroid : public BrowserAccessibility {
virtual void PostInitialize() OVERRIDE;
virtual bool IsNative() const OVERRIDE;
- virtual bool PlatformIsLeaf() const OVERRIDE;
+ bool IsLeaf() const;
bool IsCheckable() const;
bool IsChecked() const;
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm
index 545ed0c..be9ff5b 100644
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
@@ -353,12 +353,13 @@ NSDictionary* attributeToMethodNameMap = nil;
// accessibility children of this object.
- (NSArray*)children {
if (!children_) {
- uint32 childCount = browserAccessibility_->PlatformChildCount();
- children_.reset([[NSMutableArray alloc] initWithCapacity:childCount]);
- for (uint32 index = 0; index < childCount; ++index) {
+ children_.reset([[NSMutableArray alloc]
+ initWithCapacity:browserAccessibility_->child_count()] );
+ for (uint32 index = 0;
+ index < browserAccessibility_->child_count();
+ ++index) {
BrowserAccessibilityCocoa* child =
- browserAccessibility_->PlatformGetChild(index)->
- ToBrowserAccessibilityCocoa();
+ browserAccessibility_->GetChild(index)->ToBrowserAccessibilityCocoa();
if ([child isIgnored])
[children_ addObjectsFromArray:[child children]];
else
@@ -1050,9 +1051,9 @@ NSDictionary* attributeToMethodNameMap = nil;
return nil;
}
for (size_t i = 0;
- i < browserAccessibility_->PlatformChildCount();
+ i < browserAccessibility_->child_count();
++i) {
- BrowserAccessibility* child = browserAccessibility_->PlatformGetChild(i);
+ BrowserAccessibility* child = browserAccessibility_->GetChild(i);
if (child->role() != WebKit::WebAXRoleRow)
continue;
int rowIndex;
@@ -1065,9 +1066,9 @@ NSDictionary* attributeToMethodNameMap = nil;
if (rowIndex > row)
break;
for (size_t j = 0;
- j < child->PlatformChildCount();
+ j < child->child_count();
++j) {
- BrowserAccessibility* cell = child->PlatformGetChild(j);
+ BrowserAccessibility* cell = child->GetChild(j);
if (cell->role() != WebKit::WebAXRoleCell)
continue;
int colIndex;
diff --git a/content/browser/accessibility/browser_accessibility_gtk.cc b/content/browser/accessibility/browser_accessibility_gtk.cc
index acab43b..faf4c82 100644
--- a/content/browser/accessibility/browser_accessibility_gtk.cc
+++ b/content/browser/accessibility/browser_accessibility_gtk.cc
@@ -208,8 +208,7 @@ static gint browser_accessibility_get_n_children(AtkObject* atk_object) {
BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
if (!obj)
return 0;
-
- return obj->PlatformChildCount();
+ return obj->children().size();
}
static AtkObject* browser_accessibility_ref_child(
@@ -217,10 +216,6 @@ static AtkObject* browser_accessibility_ref_child(
BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
if (!obj)
return NULL;
-
- if (index < 0 || index >= static_cast<gint>(obj->PlatformChildCount()))
- return NULL;
-
AtkObject* result =
obj->children()[index]->ToBrowserAccessibilityGtk()->GetAtkObject();
g_object_ref(result);
diff --git a/content/browser/accessibility/browser_accessibility_manager_android.cc b/content/browser/accessibility/browser_accessibility_manager_android.cc
index 22479fd..c0562d0 100644
--- a/content/browser/accessibility/browser_accessibility_manager_android.cc
+++ b/content/browser/accessibility/browser_accessibility_manager_android.cc
@@ -192,9 +192,11 @@ jboolean BrowserAccessibilityManagerAndroid::PopulateAccessibilityNodeInfo(
Java_BrowserAccessibilityManager_setAccessibilityNodeInfoParent(
env, obj, info, node->parent()->renderer_id());
}
- for (unsigned i = 0; i < node->PlatformChildCount(); ++i) {
- Java_BrowserAccessibilityManager_addAccessibilityNodeInfoChild(
- env, obj, info, node->children()[i]->renderer_id());
+ if (!node->IsLeaf()) {
+ for (unsigned i = 0; i < node->child_count(); ++i) {
+ Java_BrowserAccessibilityManager_addAccessibilityNodeInfoChild(
+ env, obj, info, node->children()[i]->renderer_id());
+ }
}
Java_BrowserAccessibilityManager_setAccessibilityNodeInfoBooleanAttributes(
env, obj, info,
@@ -336,9 +338,11 @@ void BrowserAccessibilityManagerAndroid::FuzzyHitTestImpl(
return;
}
- for (uint32 i = 0; i < node->PlatformChildCount(); i++) {
- BrowserAccessibility* child = node->PlatformGetChild(i);
- FuzzyHitTestImpl(x, y, child, nearest_candidate, nearest_distance);
+ if (!node->IsLeaf()) {
+ for (uint32 i = 0; i < node->child_count(); i++) {
+ BrowserAccessibility* child = node->GetChild(i);
+ FuzzyHitTestImpl(x, y, child, nearest_candidate, nearest_distance);
+ }
}
}
diff --git a/content/browser/accessibility/browser_accessibility_manager_unittest.cc b/content/browser/accessibility/browser_accessibility_manager_unittest.cc
index bd1d165..dd4fbd1 100644
--- a/content/browser/accessibility/browser_accessibility_manager_unittest.cc
+++ b/content/browser/accessibility/browser_accessibility_manager_unittest.cc
@@ -142,8 +142,7 @@ TEST(BrowserAccessibilityManagerTest, TestNoLeaks) {
static_cast<CountedBrowserAccessibility*>(manager->GetRoot());
root_accessible->NativeAddReference();
CountedBrowserAccessibility* child1_accessible =
- static_cast<CountedBrowserAccessibility*>(
- root_accessible->PlatformGetChild(1));
+ static_cast<CountedBrowserAccessibility*>(root_accessible->GetChild(1));
child1_accessible->NativeAddReference();
// Now delete the manager, and only one of the three nodes in the tree
@@ -234,16 +233,13 @@ TEST(BrowserAccessibilityManagerTest, TestReuseBrowserAccessibilityObjects) {
static_cast<CountedBrowserAccessibility*>(manager->GetRoot());
root_accessible->NativeAddReference();
CountedBrowserAccessibility* child1_accessible =
- static_cast<CountedBrowserAccessibility*>(
- root_accessible->PlatformGetChild(0));
+ static_cast<CountedBrowserAccessibility*>(root_accessible->GetChild(0));
child1_accessible->NativeAddReference();
CountedBrowserAccessibility* child2_accessible =
- static_cast<CountedBrowserAccessibility*>(
- root_accessible->PlatformGetChild(1));
+ static_cast<CountedBrowserAccessibility*>(root_accessible->GetChild(1));
child2_accessible->NativeAddReference();
CountedBrowserAccessibility* child3_accessible =
- static_cast<CountedBrowserAccessibility*>(
- root_accessible->PlatformGetChild(2));
+ static_cast<CountedBrowserAccessibility*>(root_accessible->GetChild(2));
child3_accessible->NativeAddReference();
// Check the index in parent.
@@ -411,16 +407,15 @@ TEST(BrowserAccessibilityManagerTest, TestReuseBrowserAccessibilityObjects2) {
static_cast<CountedBrowserAccessibility*>(manager->GetRoot());
root_accessible->NativeAddReference();
CountedBrowserAccessibility* container_accessible =
- static_cast<CountedBrowserAccessibility*>(
- root_accessible->PlatformGetChild(0));
+ static_cast<CountedBrowserAccessibility*>(root_accessible->GetChild(0));
container_accessible->NativeAddReference();
CountedBrowserAccessibility* child2_accessible =
static_cast<CountedBrowserAccessibility*>(
- container_accessible->PlatformGetChild(1));
+ container_accessible->GetChild(1));
child2_accessible->NativeAddReference();
CountedBrowserAccessibility* child3_accessible =
static_cast<CountedBrowserAccessibility*>(
- container_accessible->PlatformGetChild(2));
+ container_accessible->GetChild(2));
child3_accessible->NativeAddReference();
// Check the index in parent.
diff --git a/content/browser/accessibility/browser_accessibility_win.cc b/content/browser/accessibility/browser_accessibility_win.cc
index c6ffa4d..df3263e 100644
--- a/content/browser/accessibility/browser_accessibility_win.cc
+++ b/content/browser/accessibility/browser_accessibility_win.cc
@@ -358,8 +358,7 @@ STDMETHODIMP BrowserAccessibilityWin::get_accChildCount(LONG* child_count) {
if (!child_count)
return E_INVALIDARG;
- *child_count = PlatformChildCount();
-
+ *child_count = children_.size();
return S_OK;
}
@@ -876,7 +875,7 @@ STDMETHODIMP BrowserAccessibilityWin::get_groupPosition(
parent_ &&
parent_->role() == WebKit::WebAXRoleListBox) {
*group_level = 0;
- *similar_items_in_group = parent_->PlatformChildCount();
+ *similar_items_in_group = parent_->child_count();
*position_in_group = index_in_parent_ + 1;
return S_OK;
}
@@ -2619,13 +2618,12 @@ STDMETHODIMP BrowserAccessibilityWin::get_childAt(
if (!node)
return E_INVALIDARG;
- BrowserAccessibility* child = PlatformGetChild(child_index);
- if (!child) {
+ if (child_index < children_.size()) {
*node = NULL;
return S_FALSE;
}
- *node = child->ToBrowserAccessibilityWin()->NewReference();
+ *node = children_[child_index]->ToBrowserAccessibilityWin()->NewReference();
return S_OK;
}
@@ -2805,7 +2803,7 @@ void BrowserAccessibilityWin::PreInitialize() {
parent_ &&
parent_->role() == WebKit::WebAXRoleListBox) {
ia2_attributes_.push_back(
- L"setsize:" + base::IntToString16(parent_->PlatformChildCount()));
+ L"setsize:" + base::IntToString16(parent_->child_count()));
ia2_attributes_.push_back(
L"setsize:" + base::IntToString16(index_in_parent_ + 1));
}
@@ -2972,8 +2970,8 @@ void BrowserAccessibilityWin::PostInitialize() {
hyperlink_offset_to_index_.clear();
hyperlinks_.clear();
hypertext_.clear();
- for (unsigned int i = 0; i < PlatformChildCount(); ++i) {
- BrowserAccessibility* child = PlatformGetChild(i);
+ for (unsigned int i = 0; i < children().size(); ++i) {
+ BrowserAccessibility* child = children()[i];
if (child->role() == WebKit::WebAXRoleStaticText) {
hypertext_ += UTF8ToUTF16(child->name());
} else {
@@ -3067,8 +3065,8 @@ BrowserAccessibilityWin* BrowserAccessibilityWin::GetTargetFromChildID(
if (child_id == CHILDID_SELF)
return this;
- if (child_id >= 1 && child_id <= static_cast<LONG>(PlatformChildCount()))
- return PlatformGetChild(child_id - 1)->ToBrowserAccessibilityWin();
+ if (child_id >= 1 && child_id <= static_cast<LONG>(children_.size()))
+ return children_[child_id - 1]->ToBrowserAccessibilityWin();
return manager_->ToBrowserAccessibilityManagerWin()->
GetFromUniqueIdWin(child_id);
diff --git a/content/browser/accessibility/browser_accessibility_win_unittest.cc b/content/browser/accessibility/browser_accessibility_win_unittest.cc
index 4c1ceeb..c623e25 100644
--- a/content/browser/accessibility/browser_accessibility_win_unittest.cc
+++ b/content/browser/accessibility/browser_accessibility_win_unittest.cc
@@ -347,7 +347,7 @@ TEST_F(BrowserAccessibilityTest, TestTextBoundaries) {
BrowserAccessibilityWin* root_obj =
manager->GetRoot()->ToBrowserAccessibilityWin();
BrowserAccessibilityWin* text1_obj =
- root_obj->PlatformGetChild(0)->ToBrowserAccessibilityWin();
+ root_obj->GetChild(0)->ToBrowserAccessibilityWin();
long text1_len;
ASSERT_EQ(S_OK, text1_obj->get_nCharacters(&text1_len));
diff --git a/content/common/accessibility_node_data.cc b/content/common/accessibility_node_data.cc
index f73a812..8f244df 100644
--- a/content/common/accessibility_node_data.cc
+++ b/content/common/accessibility_node_data.cc
@@ -70,10 +70,6 @@ void AccessibilityNodeData::SetName(std::string name) {
string_attributes.push_back(std::make_pair(ATTR_NAME, name));
}
-void AccessibilityNodeData::SetValue(std::string value) {
- string_attributes.push_back(std::make_pair(ATTR_VALUE, value));
-}
-
AccessibilityNodeDataTreeNode::AccessibilityNodeDataTreeNode()
: AccessibilityNodeData() {
}
@@ -184,7 +180,6 @@ std::string AccessibilityNodeData::DebugString(bool recursive) const {
case WebKit::WebAXRoleImageMap: result += " IMAGE_MAP"; break;
case WebKit::WebAXRoleImageMapLink: result += " IMAGE_MAP_LINK"; break;
case WebKit::WebAXRoleIncrementor: result += " INCREMENTOR"; break;
- case WebKit::WebAXRoleInlineTextBox: result += " INLINE_TEXT_BOX"; break;
case WebKit::WebAXRoleLabel: result += " LABEL"; break;
case WebKit::WebAXRoleLink: result += " LINK"; break;
case WebKit::WebAXRoleList: result += " LIST"; break;
@@ -379,23 +374,6 @@ std::string AccessibilityNodeData::DebugString(bool recursive) const {
case ATTR_COLOR_VALUE_BLUE:
result += " color_value_blue=" + value;
break;
- case ATTR_TEXT_DIRECTION:
- switch (int_attributes[i].second) {
- case WebKit::WebAXTextDirectionLR:
- default:
- result += " text_direction=lr";
- break;
- case WebKit::WebAXTextDirectionRL:
- result += " text_direction=rl";
- break;
- case WebKit::WebAXTextDirectionTB:
- result += " text_direction=tb";
- break;
- case WebKit::WebAXTextDirectionBT:
- result += " text_direction=bt";
- break;
- }
- break;
}
}
@@ -531,15 +509,6 @@ std::string AccessibilityNodeData::DebugString(bool recursive) const {
case ATTR_UNIQUE_CELL_IDS:
result += " unique_cell_ids=" + IntVectorToString(values);
break;
- case ATTR_CHARACTER_OFFSETS:
- result += " character_offsets=" + IntVectorToString(values);
- break;
- case ATTR_WORD_STARTS:
- result += " word_starts=" + IntVectorToString(values);
- break;
- case ATTR_WORD_ENDS:
- result += " word_ends=" + IntVectorToString(values);
- break;
}
}
diff --git a/content/common/accessibility_node_data.h b/content/common/accessibility_node_data.h
index c0c0766..34e9347 100644
--- a/content/common/accessibility_node_data.h
+++ b/content/common/accessibility_node_data.h
@@ -88,10 +88,7 @@ struct CONTENT_EXPORT AccessibilityNodeData {
// Color value for WebKit::WebAXRoleColorWell, each component is 0..255
ATTR_COLOR_VALUE_RED,
ATTR_COLOR_VALUE_GREEN,
- ATTR_COLOR_VALUE_BLUE,
-
- // Inline text attributes.
- ATTR_TEXT_DIRECTION
+ ATTR_COLOR_VALUE_BLUE
};
enum FloatAttribute {
@@ -148,20 +145,7 @@ struct CONTENT_EXPORT AccessibilityNodeData {
// For a table, the unique cell ids in row-major order of their first
// occurrence.
- ATTR_UNIQUE_CELL_IDS,
-
- // For inline text. This is the pixel position of the end of this
- // character within the bounding rectangle of this object, in the
- // direction given by ATTR_TEXT_DIRECTION. For example, for left-to-right
- // text, the first offset is the right coordinate of the first character
- // within the object's bounds, the second offset is the right coordinate
- // of the second character, and so on.
- ATTR_CHARACTER_OFFSETS,
-
- // For inline text. These int lists must be the same size; they represent
- // the start and end character index of each word within this text.
- ATTR_WORD_STARTS,
- ATTR_WORD_ENDS,
+ ATTR_UNIQUE_CELL_IDS
};
AccessibilityNodeData();
@@ -175,11 +159,9 @@ struct CONTENT_EXPORT AccessibilityNodeData {
void AddIntListAttribute(IntListAttribute attribute,
const std::vector<int32>& value);
- // Convenience functions, mainly for writing unit tests.
+ // Convenience function, mainly for writing unit tests.
// Equivalent to AddStringAttribute(ATTR_NAME, name).
void SetName(std::string name);
- // Equivalent to AddStringAttribute(ATTR_VALUE, value).
- void SetValue(std::string value);
#ifndef NDEBUG
virtual std::string DebugString(bool recursive) const;
diff --git a/content/renderer/accessibility/accessibility_node_serializer.cc b/content/renderer/accessibility/accessibility_node_serializer.cc
index 488b693..87fd149 100644
--- a/content/renderer/accessibility/accessibility_node_serializer.cc
+++ b/content/renderer/accessibility/accessibility_node_serializer.cc
@@ -151,32 +151,6 @@ void SerializeAccessibilityNode(
dst->AddIntAttribute(dst->ATTR_COLOR_VALUE_BLUE, b);
}
- if (dst->role == WebKit::WebAXRoleInlineTextBox) {
- dst->AddIntAttribute(dst->ATTR_TEXT_DIRECTION, src.textDirection());
-
- WebVector<int> src_character_offsets;
- src.characterOffsets(src_character_offsets);
- std::vector<int32> character_offsets;
- character_offsets.reserve(src_character_offsets.size());
- for (size_t i = 0; i < src_character_offsets.size(); ++i)
- character_offsets.push_back(src_character_offsets[i]);
- dst->AddIntListAttribute(dst->ATTR_CHARACTER_OFFSETS, character_offsets);
-
- WebVector<int> src_word_starts;
- WebVector<int> src_word_ends;
- src.wordBoundaries(src_word_starts, src_word_ends);
- std::vector<int32> word_starts;
- std::vector<int32> word_ends;
- word_starts.reserve(src_word_starts.size());
- word_ends.reserve(src_word_starts.size());
- for (size_t i = 0; i < src_word_starts.size(); ++i) {
- word_starts.push_back(src_word_starts[i]);
- word_ends.push_back(src_word_ends[i]);
- }
- dst->AddIntListAttribute(dst->ATTR_WORD_STARTS, word_starts);
- dst->AddIntListAttribute(dst->ATTR_WORD_ENDS, word_ends);
- }
-
if (src.accessKey().length())
dst->AddStringAttribute(dst->ATTR_ACCESS_KEY, UTF16ToUTF8(src.accessKey()));
if (src.actionVerb().length())
diff --git a/content/renderer/accessibility/renderer_accessibility_browsertest.cc b/content/renderer/accessibility/renderer_accessibility_browsertest.cc
index b8da316..7f91243 100644
--- a/content/renderer/accessibility/renderer_accessibility_browsertest.cc
+++ b/content/renderer/accessibility/renderer_accessibility_browsertest.cc
@@ -332,8 +332,8 @@ TEST_F(RendererAccessibilityTest,
scoped_ptr<TestRendererAccessibilityComplete> accessibility(
new TestRendererAccessibilityComplete(view()));
accessibility->SendPendingAccessibilityEvents();
- EXPECT_EQ(5, accessibility->browser_tree_node_count());
- EXPECT_EQ(5, CountAccessibilityNodesSentToBrowser());
+ EXPECT_EQ(3, accessibility->browser_tree_node_count());
+ EXPECT_EQ(3, CountAccessibilityNodesSentToBrowser());
// Post a "value changed" event, but then swap out
// before sending it. It shouldn't send the event while
@@ -479,8 +479,8 @@ TEST_F(RendererAccessibilityTest, DetachAccessibilityObject) {
scoped_ptr<TestRendererAccessibilityComplete> accessibility(
new TestRendererAccessibilityComplete(view()));
accessibility->SendPendingAccessibilityEvents();
- EXPECT_EQ(7, accessibility->browser_tree_node_count());
- EXPECT_EQ(7, CountAccessibilityNodesSentToBrowser());
+ EXPECT_EQ(5, accessibility->browser_tree_node_count());
+ EXPECT_EQ(5, CountAccessibilityNodesSentToBrowser());
// Initially, the accessibility tree looks like this:
//
@@ -488,9 +488,7 @@ TEST_F(RendererAccessibilityTest, DetachAccessibilityObject) {
// +--Body
// +--Anonymous Block
// +--Static Text "1"
- // +--Inline Text Box "1"
// +--Static Text "2"
- // +--Inline Text Box "2"
WebDocument document = view()->GetWebView()->mainFrame()->document();
WebAXObject root_obj = document.accessibilityObject();
WebAXObject body = root_obj.childAt(0);
@@ -518,19 +516,17 @@ TEST_F(RendererAccessibilityTest, DetachAccessibilityObject) {
// Document
// +--Body
// +--Static Text "1"
- // +--Inline Text Box "1"
// +--Static Text "2"
- // +--Inline Text Box "2"
//
// We just assert that there are now four nodes in the
// accessibility tree and that only three nodes needed
// to be updated (the body, the static text 1, and
// the static text 2).
- EXPECT_EQ(6, accessibility->browser_tree_node_count());
+ EXPECT_EQ(4, accessibility->browser_tree_node_count());
AccessibilityHostMsg_EventParams event;
GetLastAccEvent(&event);
- ASSERT_EQ(5U, event.nodes.size());
+ ASSERT_EQ(3U, event.nodes.size());
EXPECT_EQ(body.axID(), event.nodes[0].id);
EXPECT_EQ(text_1.axID(), event.nodes[1].id);
diff --git a/content/renderer/accessibility/renderer_accessibility_complete.cc b/content/renderer/accessibility/renderer_accessibility_complete.cc
index e6c003f..d70a00a 100644
--- a/content/renderer/accessibility/renderer_accessibility_complete.cc
+++ b/content/renderer/accessibility/renderer_accessibility_complete.cc
@@ -36,7 +36,6 @@ RendererAccessibilityComplete::RendererAccessibilityComplete(
last_scroll_offset_(gfx::Size()),
ack_pending_(false) {
WebAXObject::enableAccessibility();
- WebAXObject::enableInlineTextBoxAccessibility();
const WebDocument& document = GetMainDocument();
if (!document.isNull()) {