X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/264005bc6b4f629d4ef7d32c0aa626e3da7afbc7..d3d80ba74ca2e2afbd262edfe4be39010c86ebde:/src/editor/modules/documentCanvas/canvas/documentElement.js diff --git a/src/editor/modules/documentCanvas/canvas/documentElement.js b/src/editor/modules/documentCanvas/canvas/documentElement.js index b5269ca..b7a4900 100644 --- a/src/editor/modules/documentCanvas/canvas/documentElement.js +++ b/src/editor/modules/documentCanvas/canvas/documentElement.js @@ -2,9 +2,8 @@ define([ 'libs/jquery', 'libs/underscore', 'modules/documentCanvas/canvas/utils', -'modules/documentCanvas/canvas/widgets', 'modules/documentCanvas/canvas/wlxmlManagers' -], function($, _, utils, widgets, wlxmlManagers) { +], function($, _, utils, wlxmlManagers) { 'use strict'; /* global Node:false, document:false */ @@ -143,15 +142,11 @@ var DocumentNodeElement = function(htmlElement, canvas) { }; $.extend(DocumentNodeElement, { - create: function(wlxmlNode, canvas) { - return this.fromHTMLElement(this.createDOM(wlxmlNode, canvas)[0], canvas); - }, - fromHTMLElement: function(htmlElement, canvas) { return new this(htmlElement, canvas); }, - createDOM: function(wlxmlNode, canvas) { + create: function(wlxmlNode, canvas) { var dom = $('
') .attr('document-node-element', ''), widgetsContainer = $('
') @@ -175,9 +170,8 @@ $.extend(DocumentNodeElement, { container.append(DocumentElement.create(node, canvas).dom()); }.bind(this)); - return dom; + return element; } - }); var manipulate = function(e, params, action) { @@ -205,9 +199,6 @@ $.extend(DocumentNodeElement.prototype, { return this; }, append: function(params) { - if(params.tag !== 'span') { - this.data('orig-end', undefined); - } return manipulate(this, params, 'append'); }, prepend: function(params) { @@ -229,19 +220,11 @@ $.extend(DocumentNodeElement.prototype, { var elementContent = this._container().contents(); var element = this; - elementContent.each(function(idx) { + elementContent.each(function() { var childElement = DocumentElement.fromHTMLElement(this, element.canvas); if(childElement === undefined) { return true; } - if(idx === 0 && elementContent.length > 1 && elementContent[1].nodeType === Node.ELEMENT_NODE && (childElement instanceof DocumentTextElement) && $.trim($(this).text()) === '') { - return true; - } - if(idx > 0 && childElement instanceof DocumentTextElement) { - if(toret[toret.length-1] instanceof DocumentNodeElement && $.trim($(this).text()) === '') { - return true; - } - } toret.push(childElement); }); return toret; @@ -339,22 +322,19 @@ var DocumentTextElement = function(htmlElement, canvas) { }; $.extend(DocumentTextElement, { - createDOM: function(wlxmlTextNode, canvas) { + create: function(wlxmlTextNode, canvas) { var dom = $('
') .attr('document-text-element', '') .text(wlxmlTextNode.getText() || utils.unicode.ZWS), element = this.fromHTMLElement(dom[0], canvas); element.data('wlxmlNode', wlxmlTextNode); - return dom; - }, - - create: function(wlxmlTextNode, canvas) { - return this.fromHTMLElement(this.createDOM(wlxmlTextNode, canvas)[0], canvas); + return element; }, fromHTMLElement: function(htmlElement, canvas) { return new this(htmlElement, canvas); }, + isContentContainer: function(htmlElement) { return htmlElement.nodeType === Node.TEXT_NODE && $(htmlElement).parent().is('[document-text-element]'); }