OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CHROME_BROWSER_UI_ASH_ACCESSIBILITY_AX_TREE_SOURCE_ASH_H_ | |
6 #define CHROME_BROWSER_UI_ASH_ACCESSIBILITY_AX_TREE_SOURCE_ASH_H_ | |
7 | |
8 #include <map> | |
9 | |
10 #include "base/basictypes.h" | |
11 #include "base/memory/scoped_ptr.h" | |
12 #include "chrome/browser/ui/ash/accessibility/ax_root_obj_wrapper.h" | |
13 #include "ui/accessibility/ax_tree_source.h" | |
14 | |
15 namespace views { | |
16 class AXAuraObjWrapper; | |
17 } // namespace views | |
18 | |
19 // This class exposes the views hierarchy as an accessibility tree permitting | |
20 // use with other accessibility classes. | |
21 class AXTreeSourceAsh | |
22 : public ui::AXTreeSource<views::AXAuraObjWrapper*> { | |
23 public: | |
24 AXTreeSourceAsh(); | |
25 ~AXTreeSourceAsh() override; | |
26 | |
27 // A set of actions invoked on an Aura view. | |
28 void DoDefault(int32 id); | |
29 void Focus(int32 id); | |
30 void MakeVisible(int32 id); | |
31 void SetSelection(int32 id, int32 start, int32 end); | |
32 | |
33 // AXTreeSource implementation. | |
34 views::AXAuraObjWrapper* GetRoot() const override; | |
35 views::AXAuraObjWrapper* GetFromId(int32 id) const override; | |
36 int32 GetId(views::AXAuraObjWrapper* node) const override; | |
37 void GetChildren( | |
38 views::AXAuraObjWrapper* node, | |
39 std::vector<views::AXAuraObjWrapper*>* out_children) const override; | |
40 views::AXAuraObjWrapper* GetParent( | |
41 views::AXAuraObjWrapper* node) const override; | |
42 bool IsValid(views::AXAuraObjWrapper* node) const override; | |
43 bool IsEqual(views::AXAuraObjWrapper* node1, | |
44 views::AXAuraObjWrapper* node2) const override; | |
45 views::AXAuraObjWrapper* GetNull() const override; | |
46 void SerializeNode(views::AXAuraObjWrapper* node, | |
47 ui::AXNodeData* out_data) const override; | |
48 | |
49 // Useful for debugging. | |
50 std::string ToString(views::AXAuraObjWrapper* root, std::string prefix); | |
51 | |
52 private: | |
53 scoped_ptr<AXRootObjWrapper> root_; | |
54 | |
55 DISALLOW_COPY_AND_ASSIGN(AXTreeSourceAsh); | |
56 }; | |
57 | |
58 #endif // CHROME_BROWSER_UI_ASH_ACCESSIBILITY_AX_TREE_SOURCE_ASH_H_ | |
OLD | NEW |