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

Side by Side Diff: components/pdf/renderer/pdf_accessibility_tree.h

Issue 2100753003: Enable PDF accessibility when RenderFrame's accessibility mode changes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Work around cross-platform whitespace difference in print preview test Created 4 years, 5 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_ 5 #ifndef COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_
6 #define COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_ 6 #define COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <vector> 9 #include <vector>
10 10
11 #include "ppapi/c/pp_instance.h" 11 #include "ppapi/c/pp_instance.h"
12 #include "ppapi/c/private/ppb_pdf.h" 12 #include "ppapi/c/private/ppb_pdf.h"
13 #include "ui/accessibility/ax_node.h" 13 #include "ui/accessibility/ax_node.h"
14 #include "ui/accessibility/ax_tree.h" 14 #include "ui/accessibility/ax_tree.h"
15 #include "ui/accessibility/ax_tree_source.h" 15 #include "ui/accessibility/ax_tree_source.h"
16 #include "ui/gfx/geometry/rect_f.h" 16 #include "ui/gfx/geometry/rect_f.h"
17 #include "ui/gfx/geometry/vector2d_f.h" 17 #include "ui/gfx/geometry/vector2d_f.h"
18 18
19 namespace content { 19 namespace content {
20 class RenderAccessibility; 20 class RenderAccessibility;
21 class RenderView; 21 class RenderFrame;
22 class RendererPpapiHost;
22 } 23 }
23 24
24 namespace pdf { 25 namespace pdf {
25 26
26 class PdfAccessibilityTree 27 class PdfAccessibilityTree
27 : public ui::AXTreeSource<const ui::AXNode*, 28 : public ui::AXTreeSource<const ui::AXNode*,
28 ui::AXNodeData, 29 ui::AXNodeData,
29 ui::AXTreeData> { 30 ui::AXTreeData> {
30 public: 31 public:
31 explicit PdfAccessibilityTree(content::RenderView* render_view); 32 PdfAccessibilityTree(content::RendererPpapiHost* host,
33 PP_Instance instance);
32 ~PdfAccessibilityTree() override; 34 ~PdfAccessibilityTree() override;
33 35
34 void SetAccessibilityViewportInfo( 36 void SetAccessibilityViewportInfo(
35 const PP_PrivateAccessibilityViewportInfo& viewport_info); 37 const PP_PrivateAccessibilityViewportInfo& viewport_info);
36 void SetAccessibilityDocInfo( 38 void SetAccessibilityDocInfo(
37 const PP_PrivateAccessibilityDocInfo& doc_info); 39 const PP_PrivateAccessibilityDocInfo& doc_info);
38 void SetAccessibilityPageInfo( 40 void SetAccessibilityPageInfo(
39 const PP_PrivateAccessibilityPageInfo& page_info, 41 const PP_PrivateAccessibilityPageInfo& page_info,
40 const std::vector<PP_PrivateAccessibilityTextRunInfo>& text_runs, 42 const std::vector<PP_PrivateAccessibilityTextRunInfo>& text_runs,
41 const std::vector<PP_PrivateAccessibilityCharInfo>& chars); 43 const std::vector<PP_PrivateAccessibilityCharInfo>& chars);
(...skipping 24 matching lines...) Expand all
66 const std::vector<PP_PrivateAccessibilityCharInfo>& chars, 68 const std::vector<PP_PrivateAccessibilityCharInfo>& chars,
67 int char_index); 69 int char_index);
68 std::vector<int32_t> GetTextRunCharOffsets( 70 std::vector<int32_t> GetTextRunCharOffsets(
69 const PP_PrivateAccessibilityTextRunInfo& text_run, 71 const PP_PrivateAccessibilityTextRunInfo& text_run,
70 const std::vector<PP_PrivateAccessibilityCharInfo>& chars, 72 const std::vector<PP_PrivateAccessibilityCharInfo>& chars,
71 int char_index); 73 int char_index);
72 gfx::Vector2dF ToVector2dF(const PP_Point& p); 74 gfx::Vector2dF ToVector2dF(const PP_Point& p);
73 gfx::RectF ToRectF(const PP_Rect& r); 75 gfx::RectF ToRectF(const PP_Rect& r);
74 ui::AXNodeData* CreateNode(ui::AXRole role); 76 ui::AXNodeData* CreateNode(ui::AXRole role);
75 float GetDeviceScaleFactor() const; 77 float GetDeviceScaleFactor() const;
78 content::RenderAccessibility* GetRenderAccessibility();
76 79
77 ui::AXTree tree_; 80 ui::AXTree tree_;
78 content::RenderView* render_view_; 81 content::RendererPpapiHost* host_;
79 content::RenderAccessibility* render_accessibility_; 82 PP_Instance instance_;
80 double zoom_; 83 double zoom_;
81 gfx::Vector2dF scroll_; 84 gfx::Vector2dF scroll_;
82 gfx::Vector2dF offset_; 85 gfx::Vector2dF offset_;
83 PP_PrivateAccessibilityDocInfo doc_info_; 86 PP_PrivateAccessibilityDocInfo doc_info_;
84 ui::AXNodeData* doc_node_; 87 ui::AXNodeData* doc_node_;
85 std::vector<std::unique_ptr<ui::AXNodeData>> nodes_; 88 std::vector<std::unique_ptr<ui::AXNodeData>> nodes_;
86 }; 89 };
87 90
88 } // namespace pdf; 91 } // namespace pdf;
89 92
90 #endif // COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_ 93 #endif // COMPONENTS_PDF_RENDERER_PDF_ACCESSIBILITY_TREE_H_
OLDNEW
« no previous file with comments | « chrome/test/data/pdf/test-iframe.html ('k') | components/pdf/renderer/pdf_accessibility_tree.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698