Changeset 57110 in webkit
- Timestamp:
- Apr 5, 2010 6:45:31 PM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r57109 r57110 1 2010-04-05 Mark Rowe <mrowe@apple.com> 2 3 Reviewed by Adele Peterson. 4 5 Roll out r56989 as it introduced crashes in Mail. 6 <http://webkit.org/b/37115> / <rdar://problem/7829331> 7 8 * dom/Position.cpp: 9 (WebCore::Position::isCandidate): 10 * dom/PositionIterator.cpp: 11 (WebCore::PositionIterator::isCandidate): 12 1 13 2010-04-05 Darin Adler <darin@apple.com> 2 14 -
trunk/WebCore/dom/Position.cpp
r57037 r57110 726 726 bool Position::isCandidate() const 727 727 { 728 return PositionIterator(*this).isCandidate(); 728 if (isNull()) 729 return false; 730 731 RenderObject *renderer = node()->renderer(); 732 if (!renderer) 733 return false; 734 735 if (renderer->style()->visibility() != VISIBLE) 736 return false; 737 738 if (renderer->isBR()) 739 return m_offset == 0 && !nodeIsUserSelectNone(node()->parent()); 740 741 if (renderer->isText()) 742 return inRenderedText() && !nodeIsUserSelectNone(node()); 743 744 if (isTableElement(node()) || editingIgnoresContent(node())) 745 return (atFirstEditingPositionForNode() || atLastEditingPositionForNode()) && !nodeIsUserSelectNone(node()->parent()); 746 747 if (m_anchorNode->hasTagName(htmlTag)) 748 return false; 749 750 if (renderer->isBlockFlow()) { 751 if (toRenderBlock(renderer)->height() || m_anchorNode->hasTagName(bodyTag)) { 752 if (!Position::hasRenderedNonAnonymousDescendantsWithHeight(renderer)) 753 return atFirstEditingPositionForNode() && !Position::nodeIsUserSelectNone(node()); 754 return m_anchorNode->isContentEditable() && !Position::nodeIsUserSelectNone(node()) && atEditingBoundary(); 755 } 756 } else 757 return m_anchorNode->isContentEditable() && !Position::nodeIsUserSelectNone(node()) && atEditingBoundary(); 758 759 return false; 729 760 } 730 761 -
trunk/WebCore/dom/PositionIterator.cpp
r56989 r57110 163 163 return m_anchorNode->isContentEditable() && !Position::nodeIsUserSelectNone(m_anchorNode) && Position(*this).atEditingBoundary(); 164 164 } 165 } else 166 return m_anchorNode->isContentEditable() && !Position::nodeIsUserSelectNone(m_anchorNode) && Position(*this).atEditingBoundary(); 165 } 167 166 168 167 return false;
Note: See TracChangeset
for help on using the changeset viewer.