editor: removing span on delete with only one character
[fnpeditor.git] / src / editor / modules / documentCanvas / documentCanvas.js
index 98c09d2..d88e698 100644 (file)
@@ -20,7 +20,9 @@ return function(sandbox) {
         canvasElements = canvasElements.concat(plugin.canvasElements || []);
     });
 
         canvasElements = canvasElements.concat(plugin.canvasElements || []);
     });
 
-    var canvas = canvas3.fromXMLDocument(null, canvasElements);
+    var canvas = canvas3.fromXMLDocument(null, canvasElements, {
+        user: sandbox.getConfig().user
+    });
     var canvasWrapper = $(template);
     var shownAlready = false;
     var scrollbarPosition = 0,
     var canvasWrapper = $(template);
     var shownAlready = false;
     var scrollbarPosition = 0,
@@ -70,32 +72,14 @@ return function(sandbox) {
         },
         setDocument: function(wlxmlDocument) {
             canvas.loadWlxmlDocument(wlxmlDocument);
         },
         setDocument: function(wlxmlDocument) {
             canvas.loadWlxmlDocument(wlxmlDocument);
-            canvasWrapper.find('#rng-module-documentCanvas-content').empty().append(canvas.view());
-        },
-        highlightElement: function(node) {
-            canvas.toggleElementHighlight(node, true);
-        },
-        dimElement: function(node) {
-            canvas.toggleElementHighlight(node, false);
-        },
-        jumpToElement: function(node) {
-            canvas.setCurrentElement(node);
+            canvasWrapper.find('#rng-module-documentCanvas-contentWrapper').empty().append(canvas.view());
         },
         onAfterActionExecuted: function(action, ret) {
             if(ret && ret.isValid()) {
                 logger.debug('The action returned a valid fragment');
         },
         onAfterActionExecuted: function(action, ret) {
             if(ret && ret.isValid()) {
                 logger.debug('The action returned a valid fragment');
-                if(ret instanceof canvas.wlxmlDocument.RangeFragment) {
-                    canvas.setCurrentElement(ret.endNode, {caretTo: ret.endOffset});
-                } else if(ret instanceof canvas.wlxmlDocument.NodeFragment) {
-                    var params = {
-                        caretTo: ret instanceof canvas.wlxmlDocument.CaretFragment ? ret.offset : 'start'
-                    };
-                    canvas.setCurrentElement(ret.node, params);
-                } else {
-                    logger.debug('Fragment not supported');
-                }
-                return;
+                return canvas.select(ret);
             }
             }
+
             logger.debug('No valid fragment returned from the action');
 
             (actionHandlers[action.getPluginName()] || []).forEach(function(handler) {
             logger.debug('No valid fragment returned from the action');
 
             (actionHandlers[action.getPluginName()] || []).forEach(function(handler) {