Refactoring
[fnpeditor.git] / modules / documentCanvas / canvasManager.js
index 5edd4be..b7e7212 100644 (file)
@@ -109,11 +109,20 @@ Manager.prototype.insertNewNode = function(wlxmlTag, wlxmlClass) {
             offsetStart = offsetEnd;\r
             offsetEnd = tmp;\r
         }\r
+        \r
+        \r
         var wrapper = canvasNode.create({tag: wlxmlTag, klass: wlxmlClass});\r
-        this.canvas.nodeWrap({inside: canvasNode.create($(selection.anchorNode).parent()),\r
+        var parent = $(selection.anchorNode).parent();\r
+        \r
+        var textNodeIdx = parent.contents().index($(selection.anchorNode));\r
+        if(selection.anchorNode != selection.focusNode) {\r
+            textNodeIdx = [textNodeIdx, parent.contents().index($(selection.focusNode))];\r
+        }\r
+        this.canvas.nodeWrap({inside: canvasNode.create(parent),\r
                               _with: wrapper,\r
                               offsetStart: offsetStart,\r
-                              offsetEnd: offsetEnd\r
+                              offsetEnd: offsetEnd,\r
+                              textNodeIdx: textNodeIdx\r
                             });\r
         this.selectNode(wrapper, {movecaret: 'end'});\r
     }\r