Changeset 76438 in webkit
- Timestamp:
- Jan 22, 2011 2:51:42 AM (13 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r76437 r76438 1 2011-01-22 Ryosuke Niwa <rniwa@webkit.org> 2 3 Reviewed by Eric Seidel. 4 5 Stop instantiating legacy editing positions in VisibleSelection, visible_units.cpp, Frame, and RenderBlock 6 https://bugs.webkit.org/show_bug.cgi?id=52759 7 8 Stopped instantiating legacy editing positions in the following files. 9 10 * editing/VisibleSelection.cpp: 11 (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries): 12 * editing/visible_units.cpp: 13 (WebCore::previousBoundary): 14 (WebCore::previousLinePosition): 15 (WebCore::nextLinePosition): 16 (WebCore::startOfBlock): 17 * page/Frame.cpp: 18 (WebCore::Frame::visiblePositionForPoint): 19 * rendering/RenderBlock.cpp: Removed RenderBlock::positionForRenderer because it was not called anywhere. 20 * rendering/RenderBlock.h: Ditto. 21 1 22 2011-01-22 Adrienne Walker <enne@google.com> 2 23 -
trunk/Source/WebCore/editing/VisibleSelection.cpp
r76107 r76438 527 527 Node* shadowAncestor = startRoot ? startRoot->shadowAncestorNode() : 0; 528 528 if (p.isNull() && startRoot && (shadowAncestor != startRoot)) 529 p = Position(shadowAncestor, 0);529 p = positionBeforeNode(shadowAncestor); 530 530 while (p.isNotNull() && !(lowestEditableAncestor(p.node()) == baseEditableAncestor && !isEditablePosition(p))) { 531 531 Node* root = editableRootForPosition(p); … … 533 533 p = isAtomicNode(p.node()) ? positionInParentAfterNode(p.node()) : nextVisuallyDistinctCandidate(p); 534 534 if (p.isNull() && (shadowAncestor != root)) 535 p = Position(shadowAncestor, 0);535 p = positionBeforeNode(shadowAncestor); 536 536 } 537 537 VisiblePosition next(p); -
trunk/Source/WebCore/editing/visible_units.cpp
r76107 r76438 537 537 n = previousLeafWithSameEditability(n); 538 538 while (n) { 539 if (highestEditableRoot( Position(n, 0)) != highestRoot)539 if (highestEditableRoot(firstPositionInOrBeforeNode(n)) != highestRoot) 540 540 break; 541 541 Position pos(n, caretMinOffset(n)); … … 568 568 Node* node = renderer->node(); 569 569 if (node && editingIgnoresContent(node)) 570 return Position(node->parentNode(), node->nodeIndex());570 return positionInParentBeforeNode(node); 571 571 return renderer->positionForPoint(IntPoint(x - absPos.x(), root->lineTop())); 572 572 } … … 646 646 n = nextLeafWithSameEditability(n); 647 647 while (n) { 648 if (highestEditableRoot( Position(n, 0)) != highestRoot)648 if (highestEditableRoot(firstPositionInOrBeforeNode(n)) != highestRoot) 649 649 break; 650 650 Position pos(n, caretMinOffset(n)); … … 673 673 Node* node = renderer->node(); 674 674 if (node && editingIgnoresContent(node)) 675 return Position(node->parentNode(), node->nodeIndex());675 return positionInParentBeforeNode(node); 676 676 return renderer->positionForPoint(IntPoint(x - absPos.x(), root->lineTop())); 677 677 } … … 914 914 if (!startNode) 915 915 return VisiblePosition(); 916 return VisiblePosition( Position(startNode->enclosingBlockFlowElement(), 0), DOWNSTREAM);916 return VisiblePosition(firstPositionInNode(startNode->enclosingBlockFlowElement()), DOWNSTREAM); 917 917 } 918 918 -
trunk/Source/WebCore/page/Frame.cpp
r75652 r76438 786 786 VisiblePosition visiblePos = renderer->positionForPoint(result.localPoint()); 787 787 if (visiblePos.isNull()) 788 visiblePos = VisiblePosition(Position(node, 0));788 visiblePos = firstPositionInOrBeforeNode(node); 789 789 return visiblePos; 790 790 } -
trunk/Source/WebCore/rendering/RenderBlock.cpp
r76201 r76438 3933 3933 } 3934 3934 3935 Position RenderBlock::positionForRenderer(RenderObject* renderer, bool start) const3936 {3937 if (!renderer)3938 return Position(node(), 0);3939 3940 Node* n = renderer->node() ? renderer->node() : node();3941 if (!n)3942 return Position();3943 3944 ASSERT(renderer == n->renderer());3945 3946 int offset = start ? renderer->caretMinOffset() : renderer->caretMaxOffset();3947 3948 // FIXME: This was a runtime check that seemingly couldn't fail; changed it to an assertion for now.3949 ASSERT(!n->isCharacterDataNode() || renderer->isText());3950 3951 return Position(n, offset);3952 }3953 3954 3935 // FIXME: This function should go on RenderObject as an instance method. Then 3955 3936 // all cases in which positionForPoint recurs could call this instead to -
trunk/Source/WebCore/rendering/RenderBlock.h
r76248 r76438 569 569 570 570 Position positionForBox(InlineBox*, bool start = true) const; 571 Position positionForRenderer(RenderObject*, bool start = true) const;572 571 VisiblePosition positionForPointWithInlineChildren(const IntPoint&); 573 572
Note: See TracChangeset
for help on using the changeset viewer.