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

Unified Diff: content/browser/accessibility/browser_accessibility.cc

Issue 848653002: Re-land: Send Windows accessibility events based on tree updates. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@implicit_1_tests
Patch Set: Remove logging Created 5 years, 11 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.cc
diff --git a/content/browser/accessibility/browser_accessibility.cc b/content/browser/accessibility/browser_accessibility.cc
index 0a3719d4aaf401902b67ef3a8ffe55232bf0e35e..9e8f3e8d1e71203cc0c4e6f0ec3e00c72bd0f129 100644
--- a/content/browser/accessibility/browser_accessibility.cc
+++ b/content/browser/accessibility/browser_accessibility.cc
@@ -38,11 +38,6 @@ void BrowserAccessibility::Init(BrowserAccessibilityManager* manager,
node_ = node;
}
-void BrowserAccessibility::OnDataChanged() {
- GetStringAttribute(ui::AX_ATTR_NAME, &name_);
- GetStringAttribute(ui::AX_ATTR_VALUE, &value_);
-}
-
bool BrowserAccessibility::PlatformIsLeaf() const {
if (InternalChildCount() == 0)
return true;
@@ -96,6 +91,17 @@ BrowserAccessibility* BrowserAccessibility::PlatformGetChild(
return result;
}
+bool BrowserAccessibility::PlatformIsChildOfLeaf() const {
aboxhall 2015/01/22 21:22:09 Is this something we could or should reasonably ca
dmazzoni 2015/01/23 23:26:13 Worth considering! Right now our bottlenecks are m
+ BrowserAccessibility* ancestor = GetParent();
+ while (ancestor) {
+ if (ancestor->PlatformIsLeaf())
+ return true;
+ ancestor = ancestor->GetParent();
+ }
+
+ return false;
+}
+
BrowserAccessibility* BrowserAccessibility::GetPreviousSibling() {
if (GetParent() && GetIndexInParent() > 0)
return GetParent()->InternalGetChild(GetIndexInParent() - 1);
@@ -384,9 +390,6 @@ BrowserAccessibility* BrowserAccessibility::BrowserAccessibilityForPoint(
void BrowserAccessibility::Destroy() {
// Allow the object to fire a TextRemoved notification.
- name_.clear();
- value_.clear();
-
manager_->NotifyAccessibilityEvent(ui::AX_EVENT_HIDE, this);
node_ = NULL;
manager_ = NULL;
@@ -557,24 +560,6 @@ bool BrowserAccessibility::GetString16Attribute(
return true;
}
-void BrowserAccessibility::SetStringAttribute(
- ui::AXStringAttribute attribute, const std::string& value) {
- if (!node_)
- return;
- ui::AXNodeData data = GetData();
- for (size_t i = 0; i < data.string_attributes.size(); ++i) {
- if (data.string_attributes[i].first == attribute) {
- data.string_attributes[i].second = value;
- node_->SetData(data);
- return;
- }
- }
- if (!value.empty()) {
- data.string_attributes.push_back(std::make_pair(attribute, value));
- node_->SetData(data);
- }
-}
-
bool BrowserAccessibility::HasIntListAttribute(
ui::AXIntListAttribute attribute) const {
const ui::AXNodeData& data = GetData();
@@ -702,17 +687,6 @@ bool BrowserAccessibility::IsWebAreaForPresentationalIframe() const {
return grandparent->GetRole() == ui::AX_ROLE_IFRAME_PRESENTATIONAL;
}
-std::string BrowserAccessibility::GetTextRecursive() const {
- if (!name_.empty()) {
- return name_;
- }
-
- std::string result;
- for (uint32 i = 0; i < PlatformChildCount(); ++i)
- result += PlatformGetChild(i)->GetTextRecursive();
- return result;
-}
-
int BrowserAccessibility::GetStaticTextLenRecursive() const {
if (GetRole() == ui::AX_ROLE_STATIC_TEXT)
return static_cast<int>(GetStringAttribute(ui::AX_ATTR_VALUE).size());

Powered by Google App Engine
This is Rietveld 408576698