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

Side by Side Diff: Source/core/accessibility/AXRenderObject.cpp

Issue 137783006: AX: remove unused AXObject::selectedText. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2008 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 1553 matching lines...) Expand 10 before | Expand all | Expand 10 after
1564 return PlainTextRange(); 1564 return PlainTextRange();
1565 1565
1566 return ariaSelectedTextRange(); 1566 return ariaSelectedTextRange();
1567 } 1567 }
1568 1568
1569 VisibleSelection AXRenderObject::selection() const 1569 VisibleSelection AXRenderObject::selection() const
1570 { 1570 {
1571 return m_renderer->frame()->selection().selection(); 1571 return m_renderer->frame()->selection().selection();
1572 } 1572 }
1573 1573
1574 String AXRenderObject::selectedText() const
1575 {
1576 ASSERT(isTextControl());
1577
1578 if (isPasswordField())
1579 return String(); // need to return something distinct from empty string
1580
1581 if (isNativeTextControl() && m_renderer->isTextControl()) {
1582 HTMLTextFormControlElement* textControl = toRenderTextControl(m_renderer )->textFormControlElement();
1583 return textControl->selectedText();
1584 }
1585
1586 if (ariaRoleAttribute() == UnknownRole)
1587 return String();
1588
1589 return stringForRange(ariaSelectedTextRange());
1590 }
1591
1592 // 1574 //
1593 // Modify or take an action on an object. 1575 // Modify or take an action on an object.
1594 // 1576 //
1595 1577
1596 void AXRenderObject::setSelectedTextRange(const PlainTextRange& range) 1578 void AXRenderObject::setSelectedTextRange(const PlainTextRange& range)
1597 { 1579 {
1598 if (isNativeTextControl() && m_renderer->isTextControl()) { 1580 if (isNativeTextControl() && m_renderer->isTextControl()) {
1599 HTMLTextFormControlElement* textControl = toRenderTextControl(m_renderer )->textFormControlElement(); 1581 HTMLTextFormControlElement* textControl = toRenderTextControl(m_renderer )->textFormControlElement();
1600 textControl->setSelectionRange(range.start, range.start + range.length); 1582 textControl->setSelectionRange(range.start, range.start + range.length);
1601 return; 1583 return;
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
1797 VisiblePosition visiblePos = visiblePositionForIndex(0); 1779 VisiblePosition visiblePos = visiblePositionForIndex(0);
1798 VisiblePosition savedVisiblePos = visiblePos; 1780 VisiblePosition savedVisiblePos = visiblePos;
1799 visiblePos = nextLinePosition(visiblePos, 0); 1781 visiblePos = nextLinePosition(visiblePos, 0);
1800 while (!visiblePos.isNull() && visiblePos != savedVisiblePos) { 1782 while (!visiblePos.isNull() && visiblePos != savedVisiblePos) {
1801 lineBreaks.append(indexForVisiblePosition(visiblePos)); 1783 lineBreaks.append(indexForVisiblePosition(visiblePos));
1802 savedVisiblePos = visiblePos; 1784 savedVisiblePos = visiblePos;
1803 visiblePos = nextLinePosition(visiblePos, 0); 1785 visiblePos = nextLinePosition(visiblePos, 0);
1804 } 1786 }
1805 } 1787 }
1806 1788
1807 // A substring of the text associated with this accessibility object that is
1808 // specified by the given character range.
1809 String AXRenderObject::stringForRange(const PlainTextRange& range) const
1810 {
1811 if (!range.length)
1812 return String();
1813
1814 if (!isTextControl())
1815 return String();
1816
1817 String elementText = isPasswordField() ? String() : text();
1818 if (range.start + range.length > elementText.length())
1819 return String();
1820
1821 return elementText.substring(range.start, range.length);
1822 }
1823
1824 // 1789 //
1825 // Private. 1790 // Private.
1826 // 1791 //
1827 1792
1828 bool AXRenderObject::isAllowedChildOfTree() const 1793 bool AXRenderObject::isAllowedChildOfTree() const
1829 { 1794 {
1830 // Determine if this is in a tree. If so, we apply special behavior to make it work like an AXOutline. 1795 // Determine if this is in a tree. If so, we apply special behavior to make it work like an AXOutline.
1831 AXObject* axObj = parentObject(); 1796 AXObject* axObj = parentObject();
1832 bool isInTree = false; 1797 bool isInTree = false;
1833 while (axObj) { 1798 while (axObj) {
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
2362 if (label && label->renderer()) { 2327 if (label && label->renderer()) {
2363 LayoutRect labelRect = axObjectCache()->getOrCreate(label)->elementR ect(); 2328 LayoutRect labelRect = axObjectCache()->getOrCreate(label)->elementR ect();
2364 result.unite(labelRect); 2329 result.unite(labelRect);
2365 } 2330 }
2366 } 2331 }
2367 2332
2368 return result; 2333 return result;
2369 } 2334 }
2370 2335
2371 } // namespace WebCore 2336 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/accessibility/AXRenderObject.h ('k') | Source/core/html/HTMLTextFormControlElement.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698