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

Side by Side Diff: content/common/accessibility_node_data.cc

Issue 25943003: Support accessible inline text boxes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix typo Created 7 years, 1 month 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "content/common/accessibility_node_data.h" 5 #include "content/common/accessibility_node_data.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "base/containers/hash_tables.h" 9 #include "base/containers/hash_tables.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 63
64 void AccessibilityNodeData::AddIntListAttribute( 64 void AccessibilityNodeData::AddIntListAttribute(
65 IntListAttribute attribute, const std::vector<int32>& value) { 65 IntListAttribute attribute, const std::vector<int32>& value) {
66 intlist_attributes.push_back(std::make_pair(attribute, value)); 66 intlist_attributes.push_back(std::make_pair(attribute, value));
67 } 67 }
68 68
69 void AccessibilityNodeData::SetName(std::string name) { 69 void AccessibilityNodeData::SetName(std::string name) {
70 string_attributes.push_back(std::make_pair(ATTR_NAME, name)); 70 string_attributes.push_back(std::make_pair(ATTR_NAME, name));
71 } 71 }
72 72
73 void AccessibilityNodeData::SetValue(std::string value) {
74 string_attributes.push_back(std::make_pair(ATTR_VALUE, value));
75 }
76
73 AccessibilityNodeDataTreeNode::AccessibilityNodeDataTreeNode() 77 AccessibilityNodeDataTreeNode::AccessibilityNodeDataTreeNode()
74 : AccessibilityNodeData() { 78 : AccessibilityNodeData() {
75 } 79 }
76 80
77 AccessibilityNodeDataTreeNode::~AccessibilityNodeDataTreeNode() { 81 AccessibilityNodeDataTreeNode::~AccessibilityNodeDataTreeNode() {
78 } 82 }
79 83
80 AccessibilityNodeDataTreeNode& AccessibilityNodeDataTreeNode::operator=( 84 AccessibilityNodeDataTreeNode& AccessibilityNodeDataTreeNode::operator=(
81 const AccessibilityNodeData& src) { 85 const AccessibilityNodeData& src) {
82 AccessibilityNodeData::operator=(src); 86 AccessibilityNodeData::operator=(src);
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 case WebKit::WebAXRoleGroup: result += " GROUP"; break; 177 case WebKit::WebAXRoleGroup: result += " GROUP"; break;
174 case WebKit::WebAXRoleGrowArea: result += " GROW_AREA"; break; 178 case WebKit::WebAXRoleGrowArea: result += " GROW_AREA"; break;
175 case WebKit::WebAXRoleHeading: result += " HEADING"; break; 179 case WebKit::WebAXRoleHeading: result += " HEADING"; break;
176 case WebKit::WebAXRoleHelpTag: result += " HELP_TAG"; break; 180 case WebKit::WebAXRoleHelpTag: result += " HELP_TAG"; break;
177 case WebKit::WebAXRoleHorizontalRule: result += " HORIZONTAL_RULE"; break; 181 case WebKit::WebAXRoleHorizontalRule: result += " HORIZONTAL_RULE"; break;
178 case WebKit::WebAXRoleIgnored: result += " IGNORED"; break; 182 case WebKit::WebAXRoleIgnored: result += " IGNORED"; break;
179 case WebKit::WebAXRoleImage: result += " IMAGE"; break; 183 case WebKit::WebAXRoleImage: result += " IMAGE"; break;
180 case WebKit::WebAXRoleImageMap: result += " IMAGE_MAP"; break; 184 case WebKit::WebAXRoleImageMap: result += " IMAGE_MAP"; break;
181 case WebKit::WebAXRoleImageMapLink: result += " IMAGE_MAP_LINK"; break; 185 case WebKit::WebAXRoleImageMapLink: result += " IMAGE_MAP_LINK"; break;
182 case WebKit::WebAXRoleIncrementor: result += " INCREMENTOR"; break; 186 case WebKit::WebAXRoleIncrementor: result += " INCREMENTOR"; break;
187 case WebKit::WebAXRoleInlineTextBox: result += " INLINE_TEXT_BOX"; break;
183 case WebKit::WebAXRoleLabel: result += " LABEL"; break; 188 case WebKit::WebAXRoleLabel: result += " LABEL"; break;
184 case WebKit::WebAXRoleLink: result += " LINK"; break; 189 case WebKit::WebAXRoleLink: result += " LINK"; break;
185 case WebKit::WebAXRoleList: result += " LIST"; break; 190 case WebKit::WebAXRoleList: result += " LIST"; break;
186 case WebKit::WebAXRoleListBox: result += " LISTBOX"; break; 191 case WebKit::WebAXRoleListBox: result += " LISTBOX"; break;
187 case WebKit::WebAXRoleListBoxOption: result += " LISTBOX_OPTION"; break; 192 case WebKit::WebAXRoleListBoxOption: result += " LISTBOX_OPTION"; break;
188 case WebKit::WebAXRoleListItem: result += " LIST_ITEM"; break; 193 case WebKit::WebAXRoleListItem: result += " LIST_ITEM"; break;
189 case WebKit::WebAXRoleListMarker: result += " LIST_MARKER"; break; 194 case WebKit::WebAXRoleListMarker: result += " LIST_MARKER"; break;
190 case WebKit::WebAXRoleLog: result += " LOG"; break; 195 case WebKit::WebAXRoleLog: result += " LOG"; break;
191 case WebKit::WebAXRoleMain: result += " L_MAIN"; break; 196 case WebKit::WebAXRoleMain: result += " L_MAIN"; break;
192 case WebKit::WebAXRoleMarquee: result += " MARQUEE"; break; 197 case WebKit::WebAXRoleMarquee: result += " MARQUEE"; break;
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
367 break; 372 break;
368 case ATTR_COLOR_VALUE_RED: 373 case ATTR_COLOR_VALUE_RED:
369 result += " color_value_red=" + value; 374 result += " color_value_red=" + value;
370 break; 375 break;
371 case ATTR_COLOR_VALUE_GREEN: 376 case ATTR_COLOR_VALUE_GREEN:
372 result += " color_value_green=" + value; 377 result += " color_value_green=" + value;
373 break; 378 break;
374 case ATTR_COLOR_VALUE_BLUE: 379 case ATTR_COLOR_VALUE_BLUE:
375 result += " color_value_blue=" + value; 380 result += " color_value_blue=" + value;
376 break; 381 break;
382 case ATTR_TEXT_DIRECTION:
383 switch (int_attributes[i].second) {
384 case WebKit::WebAXTextDirectionLR:
385 default:
386 result += " text_direction=lr";
387 break;
388 case WebKit::WebAXTextDirectionRL:
389 result += " text_direction=rl";
390 break;
391 case WebKit::WebAXTextDirectionTB:
392 result += " text_direction=tb";
393 break;
394 case WebKit::WebAXTextDirectionBT:
395 result += " text_direction=bt";
396 break;
397 }
398 break;
377 } 399 }
378 } 400 }
379 401
380 for (size_t i = 0; i < string_attributes.size(); ++i) { 402 for (size_t i = 0; i < string_attributes.size(); ++i) {
381 std::string value = string_attributes[i].second; 403 std::string value = string_attributes[i].second;
382 switch (string_attributes[i].first) { 404 switch (string_attributes[i].first) {
383 case ATTR_DOC_URL: 405 case ATTR_DOC_URL:
384 result += " doc_url=" + value; 406 result += " doc_url=" + value;
385 break; 407 break;
386 case ATTR_DOC_TITLE: 408 case ATTR_DOC_TITLE:
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
502 break; 524 break;
503 case ATTR_LINE_BREAKS: 525 case ATTR_LINE_BREAKS:
504 result += " line_breaks=" + IntVectorToString(values); 526 result += " line_breaks=" + IntVectorToString(values);
505 break; 527 break;
506 case ATTR_CELL_IDS: 528 case ATTR_CELL_IDS:
507 result += " cell_ids=" + IntVectorToString(values); 529 result += " cell_ids=" + IntVectorToString(values);
508 break; 530 break;
509 case ATTR_UNIQUE_CELL_IDS: 531 case ATTR_UNIQUE_CELL_IDS:
510 result += " unique_cell_ids=" + IntVectorToString(values); 532 result += " unique_cell_ids=" + IntVectorToString(values);
511 break; 533 break;
534 case ATTR_CHARACTER_OFFSETS:
535 result += " character_offsets=" + IntVectorToString(values);
536 break;
537 case ATTR_WORD_STARTS:
538 result += " word_starts=" + IntVectorToString(values);
539 break;
540 case ATTR_WORD_ENDS:
541 result += " word_ends=" + IntVectorToString(values);
542 break;
512 } 543 }
513 } 544 }
514 545
515 if (!child_ids.empty()) 546 if (!child_ids.empty())
516 result += " child_ids=" + IntVectorToString(child_ids); 547 result += " child_ids=" + IntVectorToString(child_ids);
517 548
518 return result; 549 return result;
519 } 550 }
520 551
521 std::string AccessibilityNodeDataTreeNode::DebugString(bool recursive) const { 552 std::string AccessibilityNodeDataTreeNode::DebugString(bool recursive) const {
(...skipping 13 matching lines...) Expand all
535 result += children[i].DebugString(true); 566 result += children[i].DebugString(true);
536 --indent; 567 --indent;
537 } 568 }
538 569
539 return result; 570 return result;
540 } 571 }
541 572
542 #endif // ifndef NDEBUG 573 #endif // ifndef NDEBUG
543 574
544 } // namespace content 575 } // namespace content
OLDNEW
« no previous file with comments | « content/common/accessibility_node_data.h ('k') | content/renderer/accessibility/accessibility_node_serializer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698