| 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 "content/browser/accessibility/browser_accessibility_win.h" | 5 #include "content/browser/accessibility/browser_accessibility_win.h" |
| 6 | 6 |
| 7 #include <UIAutomationClient.h> | 7 #include <UIAutomationClient.h> |
| 8 #include <UIAutomationCoreApi.h> | 8 #include <UIAutomationCoreApi.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 4702 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4713 | 4713 |
| 4714 HandleSpecialTextOffset(text, &start_offset); | 4714 HandleSpecialTextOffset(text, &start_offset); |
| 4715 if (ia2_boundary == IA2_TEXT_BOUNDARY_WORD) | 4715 if (ia2_boundary == IA2_TEXT_BOUNDARY_WORD) |
| 4716 return GetWordStartBoundary(static_cast<int>(start_offset), direction); | 4716 return GetWordStartBoundary(static_cast<int>(start_offset), direction); |
| 4717 if (ia2_boundary == IA2_TEXT_BOUNDARY_LINE) { | 4717 if (ia2_boundary == IA2_TEXT_BOUNDARY_LINE) { |
| 4718 return GetLineStartBoundary( | 4718 return GetLineStartBoundary( |
| 4719 static_cast<int>(start_offset), direction, affinity); | 4719 static_cast<int>(start_offset), direction, affinity); |
| 4720 } | 4720 } |
| 4721 | 4721 |
| 4722 ui::TextBoundaryType boundary = IA2TextBoundaryToTextBoundary(ia2_boundary); | 4722 ui::TextBoundaryType boundary = IA2TextBoundaryToTextBoundary(ia2_boundary); |
| 4723 const std::vector<int32_t>& line_breaks = | 4723 return ui::FindAccessibleTextBoundary(text, GetLineStartOffsets(), boundary, |
| 4724 GetIntListAttribute(ui::AX_ATTR_LINE_BREAKS); | 4724 start_offset, direction, affinity); |
| 4725 return ui::FindAccessibleTextBoundary( | |
| 4726 text, line_breaks, boundary, start_offset, direction, affinity); | |
| 4727 } | 4725 } |
| 4728 | 4726 |
| 4729 LONG BrowserAccessibilityWin::FindStartOfStyle( | 4727 LONG BrowserAccessibilityWin::FindStartOfStyle( |
| 4730 LONG start_offset, | 4728 LONG start_offset, |
| 4731 ui::TextBoundaryDirection direction) const { | 4729 ui::TextBoundaryDirection direction) const { |
| 4732 LONG text_length = static_cast<LONG>(GetText().length()); | 4730 LONG text_length = static_cast<LONG>(GetText().length()); |
| 4733 DCHECK_GE(start_offset, 0); | 4731 DCHECK_GE(start_offset, 0); |
| 4734 DCHECK_LE(start_offset, text_length); | 4732 DCHECK_LE(start_offset, text_length); |
| 4735 | 4733 |
| 4736 switch (direction) { | 4734 switch (direction) { |
| (...skipping 802 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5539 return static_cast<BrowserAccessibilityWin*>(obj); | 5537 return static_cast<BrowserAccessibilityWin*>(obj); |
| 5540 } | 5538 } |
| 5541 | 5539 |
| 5542 const BrowserAccessibilityWin* | 5540 const BrowserAccessibilityWin* |
| 5543 ToBrowserAccessibilityWin(const BrowserAccessibility* obj) { | 5541 ToBrowserAccessibilityWin(const BrowserAccessibility* obj) { |
| 5544 DCHECK(!obj || obj->IsNative()); | 5542 DCHECK(!obj || obj->IsNative()); |
| 5545 return static_cast<const BrowserAccessibilityWin*>(obj); | 5543 return static_cast<const BrowserAccessibilityWin*>(obj); |
| 5546 } | 5544 } |
| 5547 | 5545 |
| 5548 } // namespace content | 5546 } // namespace content |
| OLD | NEW |