1 // Copyright 2020 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "pdf/accessibility_structs.h"
9 bool AccessibilityDocInfo::operator==(const AccessibilityDocInfo& other) const {
10 return page_count == other.page_count &&
11 text_accessible == other.text_accessible &&
12 text_copyable == other.text_copyable;
15 bool AccessibilityDocInfo::operator!=(const AccessibilityDocInfo& other) const {
16 return !(*this == other);
19 AccessibilityTextStyleInfo::AccessibilityTextStyleInfo() = default;
21 AccessibilityTextStyleInfo::AccessibilityTextStyleInfo(
22 const std::string& font_name,
24 AccessibilityTextRenderMode render_mode,
27 uint32_t stroke_color,
30 : font_name(font_name),
31 font_weight(font_weight),
32 render_mode(render_mode),
34 fill_color(fill_color),
35 stroke_color(stroke_color),
39 AccessibilityTextStyleInfo::AccessibilityTextStyleInfo(
40 const AccessibilityTextStyleInfo& other) = default;
42 AccessibilityTextStyleInfo::~AccessibilityTextStyleInfo() = default;
44 AccessibilityTextRunInfo::AccessibilityTextRunInfo() = default;
46 AccessibilityTextRunInfo::AccessibilityTextRunInfo(
48 const gfx::RectF& bounds,
49 AccessibilityTextDirection direction,
50 const AccessibilityTextStyleInfo& style)
51 : len(len), bounds(bounds), direction(direction), style(style) {}
53 AccessibilityTextRunInfo::AccessibilityTextRunInfo(
54 const AccessibilityTextRunInfo& other) = default;
56 AccessibilityTextRunInfo::~AccessibilityTextRunInfo() = default;
58 AccessibilityLinkInfo::AccessibilityLinkInfo() = default;
60 AccessibilityLinkInfo::AccessibilityLinkInfo(
61 const std::string& url,
62 uint32_t index_in_page,
63 const gfx::RectF& bounds,
64 const AccessibilityTextRunRangeInfo& text_range)
66 index_in_page(index_in_page),
68 text_range(text_range) {}
70 AccessibilityLinkInfo::AccessibilityLinkInfo(
71 const AccessibilityLinkInfo& other) = default;
73 AccessibilityLinkInfo::~AccessibilityLinkInfo() = default;
75 AccessibilityImageInfo::AccessibilityImageInfo() = default;
77 AccessibilityImageInfo::AccessibilityImageInfo(const std::string& alt_text,
78 uint32_t text_run_index,
79 const gfx::RectF& bounds,
80 int32_t page_object_index)
82 text_run_index(text_run_index),
84 page_object_index(page_object_index) {}
86 AccessibilityImageInfo::AccessibilityImageInfo(
87 const AccessibilityImageInfo& other) = default;
89 AccessibilityImageInfo::~AccessibilityImageInfo() = default;
91 AccessibilityHighlightInfo::AccessibilityHighlightInfo() = default;
93 AccessibilityHighlightInfo::AccessibilityHighlightInfo(
94 const std::string& note_text,
95 uint32_t index_in_page,
97 const gfx::RectF& bounds,
98 const AccessibilityTextRunRangeInfo& text_range)
99 : note_text(note_text),
100 index_in_page(index_in_page),
103 text_range(text_range) {}
105 AccessibilityHighlightInfo::AccessibilityHighlightInfo(
106 const AccessibilityHighlightInfo& other) = default;
108 AccessibilityHighlightInfo::~AccessibilityHighlightInfo() = default;
110 AccessibilityTextFieldInfo::AccessibilityTextFieldInfo() = default;
112 AccessibilityTextFieldInfo::AccessibilityTextFieldInfo(const std::string& name,
113 const std::string& value,
117 uint32_t index_in_page,
118 uint32_t text_run_index,
119 const gfx::RectF& bounds)
122 is_read_only(is_read_only),
123 is_required(is_required),
124 is_password(is_password),
125 index_in_page(index_in_page),
126 text_run_index(text_run_index),
129 AccessibilityTextFieldInfo::AccessibilityTextFieldInfo(
130 const AccessibilityTextFieldInfo& other) = default;
132 AccessibilityTextFieldInfo::~AccessibilityTextFieldInfo() = default;
134 AccessibilityChoiceFieldInfo::AccessibilityChoiceFieldInfo() = default;
136 AccessibilityChoiceFieldInfo::AccessibilityChoiceFieldInfo(
137 const std::string& name,
138 const std::vector<AccessibilityChoiceFieldOptionInfo>& options,
139 ChoiceFieldType type,
141 bool is_multi_select,
142 bool has_editable_text_box,
143 uint32_t index_in_page,
144 uint32_t text_run_index,
145 const gfx::RectF& bounds)
149 is_read_only(is_read_only),
150 is_multi_select(is_multi_select),
151 has_editable_text_box(has_editable_text_box),
152 index_in_page(index_in_page),
153 text_run_index(text_run_index),
156 AccessibilityChoiceFieldInfo::AccessibilityChoiceFieldInfo(
157 const AccessibilityChoiceFieldInfo& other) = default;
159 AccessibilityChoiceFieldInfo::~AccessibilityChoiceFieldInfo() = default;
161 AccessibilityButtonInfo::AccessibilityButtonInfo() = default;
163 AccessibilityButtonInfo::AccessibilityButtonInfo(const std::string& name,
164 const std::string& value,
168 uint32_t control_count,
169 uint32_t control_index,
170 uint32_t index_in_page,
171 uint32_t text_run_index,
172 const gfx::RectF& bounds)
176 is_read_only(is_read_only),
177 is_checked(is_checked),
178 control_count(control_count),
179 control_index(control_index),
180 index_in_page(index_in_page),
181 text_run_index(text_run_index),
184 AccessibilityButtonInfo::AccessibilityButtonInfo(
185 const AccessibilityButtonInfo& other) = default;
187 AccessibilityButtonInfo::~AccessibilityButtonInfo() = default;
189 AccessibilityFormFieldInfo::AccessibilityFormFieldInfo() = default;
191 AccessibilityFormFieldInfo::AccessibilityFormFieldInfo(
192 const std::vector<AccessibilityTextFieldInfo>& text_fields,
193 const std::vector<AccessibilityChoiceFieldInfo>& choice_fields,
194 const std::vector<AccessibilityButtonInfo>& buttons)
195 : text_fields(text_fields),
196 choice_fields(choice_fields),
199 AccessibilityFormFieldInfo::AccessibilityFormFieldInfo(
200 const AccessibilityFormFieldInfo& other) = default;
202 AccessibilityFormFieldInfo::~AccessibilityFormFieldInfo() = default;
204 AccessibilityPageObjects::AccessibilityPageObjects() = default;
206 AccessibilityPageObjects::AccessibilityPageObjects(
207 const std::vector<AccessibilityLinkInfo>& links,
208 const std::vector<AccessibilityImageInfo>& images,
209 const std::vector<AccessibilityHighlightInfo>& highlights,
210 const AccessibilityFormFieldInfo& form_fields)
213 highlights(highlights),
214 form_fields(form_fields) {}
216 AccessibilityPageObjects::AccessibilityPageObjects(
217 const AccessibilityPageObjects& other) = default;
219 AccessibilityPageObjects::~AccessibilityPageObjects() = default;
221 AccessibilityActionData::AccessibilityActionData() = default;
223 AccessibilityActionData::AccessibilityActionData(
224 AccessibilityAction action,
225 AccessibilityAnnotationType annotation_type,
226 const gfx::Point& target_point,
227 const gfx::Rect& target_rect,
228 uint32_t annotation_index,
230 AccessibilityScrollAlignment horizontal_scroll_alignment,
231 AccessibilityScrollAlignment vertical_scroll_alignment,
232 const PageCharacterIndex& selection_start_index,
233 const PageCharacterIndex& selection_end_index)
235 annotation_type(annotation_type),
236 target_point(target_point),
237 target_rect(target_rect),
238 annotation_index(annotation_index),
239 page_index(page_index),
240 horizontal_scroll_alignment(horizontal_scroll_alignment),
241 vertical_scroll_alignment(vertical_scroll_alignment),
242 selection_start_index(selection_start_index),
243 selection_end_index(selection_end_index) {}
245 AccessibilityActionData::AccessibilityActionData(
246 const AccessibilityActionData& other) = default;
248 AccessibilityActionData::~AccessibilityActionData() = default;
250 } // namespace chrome_pdf