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

Side by Side Diff: content/browser/accessibility/browser_accessibility_win_unittest.cc

Issue 2806773002: Switched to using |AXPosition| for calculating word and line boundaries on Windows. (Closed)
Patch Set: Fixed unit tests. Created 3 years, 8 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 (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/browser/accessibility/browser_accessibility_win.h" 5 #include "content/browser/accessibility/browser_accessibility_win.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <memory> 9 #include <memory>
10 #include <utility>
10 11
11 #include "base/macros.h" 12 #include "base/macros.h"
12 #include "base/strings/utf_string_conversions.h" 13 #include "base/strings/utf_string_conversions.h"
13 #include "base/win/scoped_bstr.h" 14 #include "base/win/scoped_bstr.h"
14 #include "base/win/scoped_comptr.h" 15 #include "base/win/scoped_comptr.h"
15 #include "base/win/scoped_variant.h" 16 #include "base/win/scoped_variant.h"
16 #include "content/browser/accessibility/browser_accessibility_manager.h" 17 #include "content/browser/accessibility/browser_accessibility_manager.h"
17 #include "content/browser/accessibility/browser_accessibility_manager_win.h" 18 #include "content/browser/accessibility/browser_accessibility_manager_win.h"
18 #include "content/browser/accessibility/browser_accessibility_state_impl.h" 19 #include "content/browser/accessibility/browser_accessibility_state_impl.h"
19 #include "content/browser/renderer_host/legacy_render_widget_host_win.h" 20 #include "content/browser/renderer_host/legacy_render_widget_host_win.h"
(...skipping 1041 matching lines...) Expand 10 before | Expand all | Expand 10 after
1061 textarea.role = ui::AX_ROLE_TEXT_FIELD; 1062 textarea.role = ui::AX_ROLE_TEXT_FIELD;
1062 textarea_div.role = ui::AX_ROLE_DIV; 1063 textarea_div.role = ui::AX_ROLE_DIV;
1063 textarea_text.role = ui::AX_ROLE_STATIC_TEXT; 1064 textarea_text.role = ui::AX_ROLE_STATIC_TEXT;
1064 textarea.state = (1 << ui::AX_STATE_EDITABLE) | 1065 textarea.state = (1 << ui::AX_STATE_EDITABLE) |
1065 (1 << ui::AX_STATE_FOCUSABLE) | 1066 (1 << ui::AX_STATE_FOCUSABLE) |
1066 (1 << ui::AX_STATE_MULTILINE); 1067 (1 << ui::AX_STATE_MULTILINE);
1067 textarea_div.state = 1 << ui::AX_STATE_EDITABLE; 1068 textarea_div.state = 1 << ui::AX_STATE_EDITABLE;
1068 textarea_text.state = 1 << ui::AX_STATE_EDITABLE; 1069 textarea_text.state = 1 << ui::AX_STATE_EDITABLE;
1069 textarea.SetValue(base::UTF16ToUTF8(text)); 1070 textarea.SetValue(base::UTF16ToUTF8(text));
1070 textarea_text.SetName(base::UTF16ToUTF8(text)); 1071 textarea_text.SetName(base::UTF16ToUTF8(text));
1072 textarea.AddStringAttribute(ui::AX_ATTR_HTML_TAG, "textarea");
1071 textarea.child_ids.push_back(textarea_div.id); 1073 textarea.child_ids.push_back(textarea_div.id);
1072 textarea_div.child_ids.push_back(textarea_text.id); 1074 textarea_div.child_ids.push_back(textarea_text.id);
1073 1075
1074 ui::AXNodeData textarea_line1, textarea_line2; 1076 ui::AXNodeData textarea_line1, textarea_line2;
1075 textarea_line1.id = 5; 1077 textarea_line1.id = 5;
1076 textarea_line2.id = 6; 1078 textarea_line2.id = 6;
1077 textarea_line1.role = ui::AX_ROLE_INLINE_TEXT_BOX; 1079 textarea_line1.role = ui::AX_ROLE_INLINE_TEXT_BOX;
1078 textarea_line2.role = ui::AX_ROLE_INLINE_TEXT_BOX; 1080 textarea_line2.role = ui::AX_ROLE_INLINE_TEXT_BOX;
1079 textarea_line1.state = 1 << ui::AX_STATE_EDITABLE; 1081 textarea_line1.state = 1 << ui::AX_STATE_EDITABLE;
1080 textarea_line2.state = 1 << ui::AX_STATE_EDITABLE; 1082 textarea_line2.state = 1 << ui::AX_STATE_EDITABLE;
(...skipping 12 matching lines...) Expand all
1093 text_field_text.id = 9; 1095 text_field_text.id = 9;
1094 text_field.role = ui::AX_ROLE_TEXT_FIELD; 1096 text_field.role = ui::AX_ROLE_TEXT_FIELD;
1095 text_field_div.role = ui::AX_ROLE_DIV; 1097 text_field_div.role = ui::AX_ROLE_DIV;
1096 text_field_text.role = ui::AX_ROLE_STATIC_TEXT; 1098 text_field_text.role = ui::AX_ROLE_STATIC_TEXT;
1097 text_field.state = 1099 text_field.state =
1098 (1 << ui::AX_STATE_EDITABLE) | (1 << ui::AX_STATE_FOCUSABLE); 1100 (1 << ui::AX_STATE_EDITABLE) | (1 << ui::AX_STATE_FOCUSABLE);
1099 text_field_div.state = 1 << ui::AX_STATE_EDITABLE; 1101 text_field_div.state = 1 << ui::AX_STATE_EDITABLE;
1100 text_field_text.state = 1 << ui::AX_STATE_EDITABLE; 1102 text_field_text.state = 1 << ui::AX_STATE_EDITABLE;
1101 text_field.SetValue(base::UTF16ToUTF8(line1)); 1103 text_field.SetValue(base::UTF16ToUTF8(line1));
1102 text_field_text.SetName(base::UTF16ToUTF8(line1)); 1104 text_field_text.SetName(base::UTF16ToUTF8(line1));
1105 text_field.AddStringAttribute(ui::AX_ATTR_HTML_TAG, "input");
1106 text_field.html_attributes.push_back(std::make_pair("type", "text"));
1103 text_field.child_ids.push_back(text_field_div.id); 1107 text_field.child_ids.push_back(text_field_div.id);
1104 text_field_div.child_ids.push_back(text_field_text.id); 1108 text_field_div.child_ids.push_back(text_field_text.id);
1105 1109
1106 ui::AXNodeData text_field_line; 1110 ui::AXNodeData text_field_line;
1107 text_field_line.id = 10; 1111 text_field_line.id = 10;
1108 text_field_line.role = ui::AX_ROLE_INLINE_TEXT_BOX; 1112 text_field_line.role = ui::AX_ROLE_INLINE_TEXT_BOX;
1109 text_field_line.state = 1 << ui::AX_STATE_EDITABLE; 1113 text_field_line.state = 1 << ui::AX_STATE_EDITABLE;
1110 text_field_line.SetName(base::UTF16ToUTF8(line1)); 1114 text_field_line.SetName(base::UTF16ToUTF8(line1));
1111 text_field_line.AddIntListAttribute(ui::AX_ATTR_WORD_STARTS, 1115 text_field_line.AddIntListAttribute(ui::AX_ATTR_WORD_STARTS,
1112 line1_word_starts); 1116 line1_word_starts);
(...skipping 1367 matching lines...) Expand 10 before | Expand all | Expand 10 after
2480 std::vector<AXEventNotificationDetails> events = {event}; 2484 std::vector<AXEventNotificationDetails> events = {event};
2481 manager->OnAccessibilityEvents(events); 2485 manager->OnAccessibilityEvents(events);
2482 2486
2483 EXPECT_HRESULT_SUCCEEDED(ax_child1->get_nRelations(&n_relations)); 2487 EXPECT_HRESULT_SUCCEEDED(ax_child1->get_nRelations(&n_relations));
2484 EXPECT_EQ(2, n_relations); 2488 EXPECT_EQ(2, n_relations);
2485 EXPECT_HRESULT_SUCCEEDED(ax_child2->get_nRelations(&n_relations)); 2489 EXPECT_HRESULT_SUCCEEDED(ax_child2->get_nRelations(&n_relations));
2486 EXPECT_EQ(2, n_relations); 2490 EXPECT_EQ(2, n_relations);
2487 } 2491 }
2488 2492
2489 } // namespace content 2493 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/accessibility/browser_accessibility_win.cc ('k') | ui/accessibility/ax_position.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698