Fix for Docomo bug 1339. No regression
authorWojciech Bielawski <w.bielawski@samsung.com>
Tue, 14 May 2013 12:18:30 +0000 (14:18 +0200)
committerWojciech Bielawski <w.bielawski@samsung.com>
Thu, 6 Jun 2013 09:19:34 +0000 (11:19 +0200)
Change-Id: If920087064c57ab26484657fe063a37944c6d101

Source/WebCore/editing/ReplaceSelectionCommand.cpp

index d672392..b0e0ae3 100644 (file)
@@ -933,7 +933,14 @@ void ReplaceSelectionCommand::doApply()
             if (insertionPos.containerNode() != nodeToSplitTo->parentNode()) {
                 Node* splitStart = insertionPos.computeNodeAfterPosition();
 #if ENABLE(TIZEN_CONTENT_EDITABLE_BACKSPACE)
-                if (splitStart) {
+                if (!splitStart) {
+                    splitStart = insertionPos.containerNode();
+                    nodeToSplitTo = splitTreeToNode(splitStart, nodeToSplitTo->parentNode()).get();
+                    Node* insertAfterNode = nodeToSplitTo->previousSibling();
+                    if (!insertAfterNode)
+                        insertAfterNode = nodeToSplitTo.get();
+                    insertionPos = positionInParentAfterNode(insertAfterNode);
+                } else {
                     nodeToSplitTo = splitTreeToNode(splitStart, nodeToSplitTo->parentNode()).get();
                     insertionPos = positionInParentBeforeNode(nodeToSplitTo.get());
                 }