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

Unified Diff: ui/accessibility/ax_serializable_tree.cc

Issue 125783002: Add AXTreeDelegate and refactor other AXTree classes slightly. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed const issue Created 6 years, 10 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
« no previous file with comments | « ui/accessibility/ax_serializable_tree.h ('k') | ui/accessibility/ax_tree.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/accessibility/ax_serializable_tree.cc
diff --git a/ui/accessibility/ax_serializable_tree.cc b/ui/accessibility/ax_serializable_tree.cc
index ca52ab39a23944731e8f5af4a4997ecc3b6b23fd..4e4da834d80adfb51ff333e4d0f789938e5c9daa 100644
--- a/ui/accessibility/ax_serializable_tree.cc
+++ b/ui/accessibility/ax_serializable_tree.cc
@@ -14,7 +14,7 @@ namespace ui {
// AXTreeSource abstraction and doesn't need to actually know about
// AXTree directly. Another AXTreeSource is used to abstract the Blink
// accessibility tree.
-class AX_EXPORT AXTreeSourceAdapter : public AXTreeSource<AXNode> {
+class AX_EXPORT AXTreeSourceAdapter : public AXTreeSource<const AXNode*> {
public:
AXTreeSourceAdapter(AXTree* tree) : tree_(tree) {}
virtual ~AXTreeSourceAdapter() {}
@@ -32,19 +32,30 @@ class AX_EXPORT AXTreeSourceAdapter : public AXTreeSource<AXNode> {
return node->id();
}
- virtual int GetChildCount(const AXNode* node) const OVERRIDE {
- return node->child_count();
- }
-
- virtual AXNode* GetChildAtIndex(const AXNode* node, int index)
- const OVERRIDE {
- return node->ChildAtIndex(index);
+ virtual void GetChildren(
+ const AXNode* node,
+ std::vector<const AXNode*>* out_children) const OVERRIDE {
+ for (int i = 0; i < node->child_count(); ++i)
+ out_children->push_back(node->ChildAtIndex(i));
}
virtual AXNode* GetParent(const AXNode* node) const OVERRIDE {
return node->parent();
}
+ virtual bool IsValid(const AXNode* node) const OVERRIDE {
+ return node != NULL;
+ }
+
+ virtual bool IsEqual(const AXNode* node1,
+ const AXNode* node2) const OVERRIDE {
+ return node1 == node2;
+ }
+
+ virtual const AXNode* GetNull() const OVERRIDE {
+ return NULL;
+ }
+
virtual void SerializeNode(
const AXNode* node, AXNodeData* out_data) const OVERRIDE {
*out_data = node->data();
@@ -64,7 +75,7 @@ AXSerializableTree::AXSerializableTree(const AXTreeUpdate& initial_state)
AXSerializableTree::~AXSerializableTree() {
}
-AXTreeSource<AXNode>* AXSerializableTree::CreateTreeSource() {
+AXTreeSource<const AXNode*>* AXSerializableTree::CreateTreeSource() {
return new AXTreeSourceAdapter(this);
}
« no previous file with comments | « ui/accessibility/ax_serializable_tree.h ('k') | ui/accessibility/ax_tree.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698