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

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

Issue 2301833005: Get rid of AX_LINE_BREAKS attribute to improve performance. (Closed)
Patch Set: Re-worded comment. Created 4 years, 3 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 <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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698