| OLD | NEW |
| 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 |
| OLD | NEW |