111 const base::string16& desired_ia2_relation,
112 base::string16* out_ia2_relation,
113 std::set<AXPlatformNode*>* out_targets) {
123 static std::vector<ax::mojom::IntAttribute>
124 int_attributes_with_reverse_relations;
125 static std::vector<ax::mojom::IntListAttribute>
126 intlist_attributes_with_reverse_relations;
127 static bool first_time =
true;
129 for (int32_t attr_index =
135 int_attributes_with_reverse_relations.push_back(attr);
137 for (int32_t attr_index =
144 intlist_attributes_with_reverse_relations.push_back(attr);
161 if (!relation.empty() &&
162 (desired_ia2_relation.empty() || desired_ia2_relation == relation)) {
166 if (desired_index == total_count) {
167 *out_ia2_relation = relation;
179 int_attributes_with_reverse_relations) {
181 std::set<AXPlatformNode*> targets =
185 if (targets.size()) {
186 if (!relation.empty() &&
187 (desired_ia2_relation.empty() || desired_ia2_relation == relation)) {
188 if (desired_index == total_count) {
189 *out_ia2_relation = relation;
190 *out_targets = targets;
204 if (!relation.empty() &&
205 (desired_ia2_relation.empty() || desired_ia2_relation == relation)) {
206 if (desired_index == total_count) {
207 *out_ia2_relation = relation;
210 if (target_id == node_data.
id)
214 if (out_targets->size() == 0)
225 intlist_attributes_with_reverse_relations) {
226 base::string16 relation =
228 std::set<AXPlatformNode*> targets =
232 if (targets.size()) {
233 if (!relation.empty() &&
234 (desired_ia2_relation.empty() || desired_ia2_relation == relation)) {
235 if (desired_index == total_count) {
236 *out_ia2_relation = relation;
237 *out_targets = targets;