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

Side by Side Diff: content/renderer/accessibility/blink_ax_tree_source.h

Issue 268543008: Cross-process iframe accessibility. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address feedback Created 6 years, 4 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_ 5 #ifndef CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_
6 #define CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_ 6 #define CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_
7 7
8 #include "third_party/WebKit/public/web/WebAXObject.h" 8 #include "third_party/WebKit/public/web/WebAXObject.h"
9 #include "ui/accessibility/ax_node_data.h" 9 #include "ui/accessibility/ax_node_data.h"
10 #include "ui/accessibility/ax_tree_source.h" 10 #include "ui/accessibility/ax_tree_source.h"
11 11
12 namespace content { 12 namespace content {
13 13
14 class RenderFrameImpl; 14 class RenderFrameImpl;
15 15
16 class BlinkAXTreeSource 16 class BlinkAXTreeSource
17 : public ui::AXTreeSource<blink::WebAXObject> { 17 : public ui::AXTreeSource<blink::WebAXObject> {
18 public: 18 public:
19 BlinkAXTreeSource(RenderFrameImpl* render_frame); 19 BlinkAXTreeSource(RenderFrameImpl* render_frame);
20 virtual ~BlinkAXTreeSource(); 20 virtual ~BlinkAXTreeSource();
21 21
22 // Call this to have BlinkAXTreeSource collect a mapping from
23 // node ids to the frame routing id for an out-of-process iframe during
24 // calls to SerializeNode.
25 void CollectChildFrameIdMapping(
26 std::map<int32, int>* node_to_frame_routing_id_map);
27
22 // Walks up the ancestor chain to see if this is a descendant of the root. 28 // Walks up the ancestor chain to see if this is a descendant of the root.
23 bool IsInTree(blink::WebAXObject node) const; 29 bool IsInTree(blink::WebAXObject node) const;
24 30
25 // AXTreeSource implementation. 31 // AXTreeSource implementation.
26 virtual blink::WebAXObject GetRoot() const OVERRIDE; 32 virtual blink::WebAXObject GetRoot() const OVERRIDE;
27 virtual blink::WebAXObject GetFromId(int32 id) const OVERRIDE; 33 virtual blink::WebAXObject GetFromId(int32 id) const OVERRIDE;
28 virtual int32 GetId(blink::WebAXObject node) const OVERRIDE; 34 virtual int32 GetId(blink::WebAXObject node) const OVERRIDE;
29 virtual void GetChildren( 35 virtual void GetChildren(
30 blink::WebAXObject node, 36 blink::WebAXObject node,
31 std::vector<blink::WebAXObject>* out_children) const OVERRIDE; 37 std::vector<blink::WebAXObject>* out_children) const OVERRIDE;
32 virtual blink::WebAXObject GetParent(blink::WebAXObject node) const 38 virtual blink::WebAXObject GetParent(blink::WebAXObject node) const
33 OVERRIDE; 39 OVERRIDE;
34 virtual void SerializeNode(blink::WebAXObject node, 40 virtual void SerializeNode(blink::WebAXObject node,
35 ui::AXNodeData* out_data) const OVERRIDE; 41 ui::AXNodeData* out_data) const OVERRIDE;
36 virtual bool IsValid(blink::WebAXObject node) const OVERRIDE; 42 virtual bool IsValid(blink::WebAXObject node) const OVERRIDE;
37 virtual bool IsEqual(blink::WebAXObject node1, 43 virtual bool IsEqual(blink::WebAXObject node1,
38 blink::WebAXObject node2) const OVERRIDE; 44 blink::WebAXObject node2) const OVERRIDE;
39 virtual blink::WebAXObject GetNull() const OVERRIDE; 45 virtual blink::WebAXObject GetNull() const OVERRIDE;
40 46
41 blink::WebDocument GetMainDocument() const; 47 blink::WebDocument GetMainDocument() const;
42 48
43 private: 49 private:
44 RenderFrameImpl* render_frame_; 50 RenderFrameImpl* render_frame_;
51 std::map<int32, int>* node_to_frame_routing_id_map_;
52
45 }; 53 };
46 54
47 } // namespace content 55 } // namespace content
48 56
49 #endif // CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_ 57 #endif // CONTENT_RENDERER_ACCESSIBILITY_BLINK_AX_TREE_SOURCE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698