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

Side by Side Diff: third_party/WebKit/Source/modules/accessibility/InspectorAccessibilityAgent.h

Issue 2390783006: [DevTools] Accessibility: Show siblings and children of selected node (Closed)
Patch Set: Rebase, address comments, revert images Created 4 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef InspectorAccessibilityAgent_h 5 #ifndef InspectorAccessibilityAgent_h
6 #define InspectorAccessibilityAgent_h 6 #define InspectorAccessibilityAgent_h
7 7
8 #include "core/inspector/InspectorBaseAgent.h" 8 #include "core/inspector/InspectorBaseAgent.h"
9 #include "core/inspector/protocol/Accessibility.h" 9 #include "core/inspector/protocol/Accessibility.h"
10 #include "modules/ModulesExport.h" 10 #include "modules/ModulesExport.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 class AXObject; 14 class AXObject;
15 class AXObjectCacheImpl;
15 class InspectorDOMAgent; 16 class InspectorDOMAgent;
16 class Page; 17 class Page;
17 18
18 class MODULES_EXPORT InspectorAccessibilityAgent 19 class MODULES_EXPORT InspectorAccessibilityAgent
19 : public InspectorBaseAgent<protocol::Accessibility::Metainfo> { 20 : public InspectorBaseAgent<protocol::Accessibility::Metainfo> {
20 WTF_MAKE_NONCOPYABLE(InspectorAccessibilityAgent); 21 WTF_MAKE_NONCOPYABLE(InspectorAccessibilityAgent);
21 22
22 public: 23 public:
23 InspectorAccessibilityAgent(Page*, InspectorDOMAgent*); 24 InspectorAccessibilityAgent(Page*, InspectorDOMAgent*);
24 25
25 // Base agent methods. 26 // Base agent methods.
26 DECLARE_VIRTUAL_TRACE(); 27 DECLARE_VIRTUAL_TRACE();
27 28
28 // Protocol methods. 29 // Protocol methods.
29 Response getAXNodeChain( 30 Response getPartialAXTree(
30 int domNodeId, 31 int domNodeId,
31 bool fetchAncestors, 32 Maybe<bool> fetchRelatives,
32 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>*) 33 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>*)
33 override; 34 override;
34 35
35 private: 36 private:
36 Member<Page> m_page; 37 Member<Page> m_page;
37 Member<InspectorDOMAgent> m_domAgent; 38 Member<InspectorDOMAgent> m_domAgent;
38 39
39 std::unique_ptr<protocol::Accessibility::AXNode> buildObjectForIgnoredNode( 40 std::unique_ptr<protocol::Accessibility::AXNode> buildObjectForIgnoredNode(
40 Node* domNode, 41 Node* domNode,
41 AXObject*) const; 42 AXObject*,
43 bool fetchRelatives,
44 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
45 AXObjectCacheImpl&) const;
46 void populateDOMNodeRelatives(
47 Node& inspectedDOMNode,
48 protocol::Accessibility::AXNode&,
49 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
50 AXObjectCacheImpl&) const;
51 void findDOMNodeChildren(
52 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNodeId>>&
53 childIds,
54 Node& parentNode,
55 Node& inspectedDOMNode,
56 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
57 AXObjectCacheImpl&) const;
42 std::unique_ptr<protocol::Accessibility::AXNode> buildProtocolAXObject( 58 std::unique_ptr<protocol::Accessibility::AXNode> buildProtocolAXObject(
43 AXObject&) const; 59 AXObject&,
44 void fillCoreProperties(AXObject&, protocol::Accessibility::AXNode&) const; 60 AXObject* inspectedAXObject,
61 bool fetchRelatives,
62 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
63 AXObjectCacheImpl&) const;
64 void fillCoreProperties(
65 AXObject&,
66 AXObject* inspectedAXObject,
67 bool fetchRelatives,
68 protocol::Accessibility::AXNode&,
69 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
70 AXObjectCacheImpl&) const;
71 void addAncestors(
72 AXObject& firstAncestor,
73 AXObject* inspectedAXObject,
74 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
75 AXObjectCacheImpl&) const;
76 void populateRelatives(
77 AXObject&,
78 AXObject* inspectedAXObject,
79 protocol::Accessibility::AXNode&,
80 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
81 AXObjectCacheImpl&) const;
82 void addSiblingsOfIgnored(
83 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNodeId>>&
84 childIds,
85 AXObject& parentAXObject,
86 AXObject* inspectedAXObject,
87 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
88 AXObjectCacheImpl&) const;
89 void addChild(
90 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNodeId>>&
91 childIds,
92 AXObject& childAXObject,
93 AXObject* inspectedAXObject,
94 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
95 AXObjectCacheImpl&) const;
96 void addChildren(
97 AXObject&,
98 AXObject* inspectedAXObject,
99 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNodeId>>&
100 childIds,
101 std::unique_ptr<protocol::Array<protocol::Accessibility::AXNode>>& nodes,
102 AXObjectCacheImpl&) const;
45 }; 103 };
46 104
47 } // namespace blink 105 } // namespace blink
48 106
49 #endif // InspectorAccessibilityAgent_h 107 #endif // InspectorAccessibilityAgent_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698