OLD | NEW |
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 <stdint.h> |
| 6 |
| 7 #include "base/macros.h" |
5 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
6 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
7 #include "base/win/scoped_bstr.h" | 10 #include "base/win/scoped_bstr.h" |
8 #include "base/win/scoped_comptr.h" | 11 #include "base/win/scoped_comptr.h" |
9 #include "base/win/scoped_variant.h" | 12 #include "base/win/scoped_variant.h" |
10 #include "content/browser/accessibility/browser_accessibility_manager.h" | 13 #include "content/browser/accessibility/browser_accessibility_manager.h" |
11 #include "content/browser/accessibility/browser_accessibility_manager_win.h" | 14 #include "content/browser/accessibility/browser_accessibility_manager_win.h" |
12 #include "content/browser/accessibility/browser_accessibility_state_impl.h" | 15 #include "content/browser/accessibility/browser_accessibility_state_impl.h" |
13 #include "content/browser/accessibility/browser_accessibility_win.h" | 16 #include "content/browser/accessibility/browser_accessibility_win.h" |
14 #include "content/browser/renderer_host/legacy_render_widget_host_win.h" | 17 #include "content/browser/renderer_host/legacy_render_widget_host_win.h" |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 | 333 |
331 ui::AXNodeData root; | 334 ui::AXNodeData root; |
332 root.id = 1; | 335 root.id = 1; |
333 root.role = ui::AX_ROLE_ROOT_WEB_AREA; | 336 root.role = ui::AX_ROLE_ROOT_WEB_AREA; |
334 root.child_ids.push_back(2); | 337 root.child_ids.push_back(2); |
335 | 338 |
336 ui::AXNodeData text_field; | 339 ui::AXNodeData text_field; |
337 text_field.id = 2; | 340 text_field.id = 2; |
338 text_field.role = ui::AX_ROLE_TEXT_FIELD; | 341 text_field.role = ui::AX_ROLE_TEXT_FIELD; |
339 text_field.AddStringAttribute(ui::AX_ATTR_VALUE, text_value); | 342 text_field.AddStringAttribute(ui::AX_ATTR_VALUE, text_value); |
340 std::vector<int32> line_start_offsets; | 343 std::vector<int32_t> line_start_offsets; |
341 line_start_offsets.push_back(15); | 344 line_start_offsets.push_back(15); |
342 text_field.AddIntListAttribute( | 345 text_field.AddIntListAttribute( |
343 ui::AX_ATTR_LINE_BREAKS, line_start_offsets); | 346 ui::AX_ATTR_LINE_BREAKS, line_start_offsets); |
344 text_field.child_ids.push_back(3); | 347 text_field.child_ids.push_back(3); |
345 text_field.child_ids.push_back(5); | 348 text_field.child_ids.push_back(5); |
346 text_field.child_ids.push_back(6); | 349 text_field.child_ids.push_back(6); |
347 | 350 |
348 ui::AXNodeData static_text1; | 351 ui::AXNodeData static_text1; |
349 static_text1.id = 3; | 352 static_text1.id = 3; |
350 static_text1.role = ui::AX_ROLE_STATIC_TEXT; | 353 static_text1.role = ui::AX_ROLE_STATIC_TEXT; |
351 static_text1.AddStringAttribute(ui::AX_ATTR_NAME, line1); | 354 static_text1.AddStringAttribute(ui::AX_ATTR_NAME, line1); |
352 static_text1.child_ids.push_back(4); | 355 static_text1.child_ids.push_back(4); |
353 | 356 |
354 ui::AXNodeData inline_box1; | 357 ui::AXNodeData inline_box1; |
355 inline_box1.id = 4; | 358 inline_box1.id = 4; |
356 inline_box1.role = ui::AX_ROLE_INLINE_TEXT_BOX; | 359 inline_box1.role = ui::AX_ROLE_INLINE_TEXT_BOX; |
357 inline_box1.AddStringAttribute(ui::AX_ATTR_NAME, line1); | 360 inline_box1.AddStringAttribute(ui::AX_ATTR_NAME, line1); |
358 std::vector<int32> word_start_offsets1; | 361 std::vector<int32_t> word_start_offsets1; |
359 word_start_offsets1.push_back(0); | 362 word_start_offsets1.push_back(0); |
360 word_start_offsets1.push_back(4); | 363 word_start_offsets1.push_back(4); |
361 word_start_offsets1.push_back(8); | 364 word_start_offsets1.push_back(8); |
362 inline_box1.AddIntListAttribute( | 365 inline_box1.AddIntListAttribute( |
363 ui::AX_ATTR_WORD_STARTS, word_start_offsets1); | 366 ui::AX_ATTR_WORD_STARTS, word_start_offsets1); |
364 | 367 |
365 ui::AXNodeData line_break; | 368 ui::AXNodeData line_break; |
366 line_break.id = 5; | 369 line_break.id = 5; |
367 line_break.role = ui::AX_ROLE_LINE_BREAK; | 370 line_break.role = ui::AX_ROLE_LINE_BREAK; |
368 line_break.AddStringAttribute(ui::AX_ATTR_NAME, "\n"); | 371 line_break.AddStringAttribute(ui::AX_ATTR_NAME, "\n"); |
369 | 372 |
370 ui::AXNodeData static_text2; | 373 ui::AXNodeData static_text2; |
371 static_text2.id = 6; | 374 static_text2.id = 6; |
372 static_text2.role = ui::AX_ROLE_STATIC_TEXT; | 375 static_text2.role = ui::AX_ROLE_STATIC_TEXT; |
373 static_text2.AddStringAttribute(ui::AX_ATTR_NAME, line2); | 376 static_text2.AddStringAttribute(ui::AX_ATTR_NAME, line2); |
374 static_text2.child_ids.push_back(7); | 377 static_text2.child_ids.push_back(7); |
375 | 378 |
376 ui::AXNodeData inline_box2; | 379 ui::AXNodeData inline_box2; |
377 inline_box2.id = 7; | 380 inline_box2.id = 7; |
378 inline_box2.role = ui::AX_ROLE_INLINE_TEXT_BOX; | 381 inline_box2.role = ui::AX_ROLE_INLINE_TEXT_BOX; |
379 inline_box2.AddStringAttribute(ui::AX_ATTR_NAME, line2); | 382 inline_box2.AddStringAttribute(ui::AX_ATTR_NAME, line2); |
380 std::vector<int32> word_start_offsets2; | 383 std::vector<int32_t> word_start_offsets2; |
381 word_start_offsets2.push_back(0); | 384 word_start_offsets2.push_back(0); |
382 word_start_offsets2.push_back(5); | 385 word_start_offsets2.push_back(5); |
383 word_start_offsets2.push_back(10); | 386 word_start_offsets2.push_back(10); |
384 inline_box2.AddIntListAttribute( | 387 inline_box2.AddIntListAttribute( |
385 ui::AX_ATTR_WORD_STARTS, word_start_offsets2); | 388 ui::AX_ATTR_WORD_STARTS, word_start_offsets2); |
386 | 389 |
387 CountedBrowserAccessibility::reset(); | 390 CountedBrowserAccessibility::reset(); |
388 scoped_ptr<BrowserAccessibilityManager> manager( | 391 scoped_ptr<BrowserAccessibilityManager> manager( |
389 BrowserAccessibilityManager::Create( | 392 BrowserAccessibilityManager::Create( |
390 MakeAXTreeUpdate(root, text_field, static_text1, inline_box1, | 393 MakeAXTreeUpdate(root, text_field, static_text1, inline_box1, |
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
713 EXPECT_EQ(3, hyperlink_index); | 716 EXPECT_EQ(3, hyperlink_index); |
714 | 717 |
715 manager.reset(); | 718 manager.reset(); |
716 ASSERT_EQ(0, CountedBrowserAccessibility::num_instances()); | 719 ASSERT_EQ(0, CountedBrowserAccessibility::num_instances()); |
717 } | 720 } |
718 | 721 |
719 TEST_F(BrowserAccessibilityTest, TestCreateEmptyDocument) { | 722 TEST_F(BrowserAccessibilityTest, TestCreateEmptyDocument) { |
720 // Try creating an empty document with busy state. Readonly is | 723 // Try creating an empty document with busy state. Readonly is |
721 // set automatically. | 724 // set automatically. |
722 CountedBrowserAccessibility::reset(); | 725 CountedBrowserAccessibility::reset(); |
723 const int32 busy_state = 1 << ui::AX_STATE_BUSY; | 726 const int32_t busy_state = 1 << ui::AX_STATE_BUSY; |
724 const int32 readonly_state = 1 << ui::AX_STATE_READ_ONLY; | 727 const int32_t readonly_state = 1 << ui::AX_STATE_READ_ONLY; |
725 const int32 enabled_state = 1 << ui::AX_STATE_ENABLED; | 728 const int32_t enabled_state = 1 << ui::AX_STATE_ENABLED; |
726 scoped_ptr<BrowserAccessibilityManager> manager( | 729 scoped_ptr<BrowserAccessibilityManager> manager( |
727 new BrowserAccessibilityManagerWin( | 730 new BrowserAccessibilityManagerWin( |
728 BrowserAccessibilityManagerWin::GetEmptyDocument(), | 731 BrowserAccessibilityManagerWin::GetEmptyDocument(), |
729 NULL, | 732 NULL, |
730 new CountedBrowserAccessibilityFactory())); | 733 new CountedBrowserAccessibilityFactory())); |
731 | 734 |
732 // Verify the root is as we expect by default. | 735 // Verify the root is as we expect by default. |
733 BrowserAccessibility* root = manager->GetRoot(); | 736 BrowserAccessibility* root = manager->GetRoot(); |
734 EXPECT_EQ(0, root->GetId()); | 737 EXPECT_EQ(0, root->GetId()); |
735 EXPECT_EQ(ui::AX_ROLE_ROOT_WEB_AREA, root->GetRole()); | 738 EXPECT_EQ(ui::AX_ROLE_ROOT_WEB_AREA, root->GetRole()); |
(...skipping 935 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1671 EXPECT_EQ(S_OK, hr); | 1674 EXPECT_EQ(S_OK, hr); |
1672 | 1675 |
1673 base::win::ScopedVariant new_child_variant(child_unique_id_2); | 1676 base::win::ScopedVariant new_child_variant(child_unique_id_2); |
1674 base::win::ScopedComPtr<IDispatch> new_child_dispatch; | 1677 base::win::ScopedComPtr<IDispatch> new_child_dispatch; |
1675 hr = root->ToBrowserAccessibilityWin()->get_accChild( | 1678 hr = root->ToBrowserAccessibilityWin()->get_accChild( |
1676 new_child_variant, new_child_dispatch.Receive()); | 1679 new_child_variant, new_child_dispatch.Receive()); |
1677 EXPECT_EQ(S_OK, hr); | 1680 EXPECT_EQ(S_OK, hr); |
1678 } | 1681 } |
1679 | 1682 |
1680 } // namespace content | 1683 } // namespace content |
OLD | NEW |