From 4c97ec844ded0092a3e655f0ff41f8211b87ff18 Mon Sep 17 00:00:00 2001 From: Oliver Pulges Date: Tue, 18 Aug 2015 14:30:33 +0300 Subject: [PATCH] Update version --- lib/wysihtml/rails/version.rb | 2 +- vendor/assets/javascripts/wysihtml-toolbar.js | 19 +++++++++++++++---- vendor/assets/javascripts/wysihtml.js | 19 +++++++++++++++---- 3 files changed, 31 insertions(+), 9 deletions(-) diff --git a/lib/wysihtml/rails/version.rb b/lib/wysihtml/rails/version.rb index 9a9af5a..64362f0 100644 --- a/lib/wysihtml/rails/version.rb +++ b/lib/wysihtml/rails/version.rb @@ -1,5 +1,5 @@ module Wysihtml module Rails - VERSION = "0.5.0.beta12" + VERSION = "0.5.0.beta13" end end diff --git a/vendor/assets/javascripts/wysihtml-toolbar.js b/vendor/assets/javascripts/wysihtml-toolbar.js index a456bea..ef0551b 100644 --- a/vendor/assets/javascripts/wysihtml-toolbar.js +++ b/vendor/assets/javascripts/wysihtml-toolbar.js @@ -1,5 +1,5 @@ /** - * @license wysihtml v0.5.0-beta12 + * @license wysihtml v0.5.0-beta13 * https://github.com/Voog/wysihtml * * Author: Christopher Blum (https://github.com/tiff) @@ -10,7 +10,7 @@ * */ var wysihtml5 = { - version: "0.5.0-beta12", + version: "0.5.0-beta13", // namespaces commands: {}, @@ -405,6 +405,8 @@ var wysihtml5 = { return all; }; + + var normalizeFix = function() { var f = Node.prototype.normalize; var nf = function() { @@ -412,13 +414,15 @@ var wysihtml5 = { s = this.ownerDocument.defaultView.getSelection(), anode = s.anchorNode, aoffset = s.anchorOffset, + aelement = anode && anode.nodeType === 1 && anode.childNodes.length > 0 ? anode.childNodes[aoffset] : undefined, fnode = s.focusNode, foffset = s.focusOffset, + felement = fnode && fnode.nodeType === 1 && foffset > 0 ? fnode.childNodes[foffset -1] : undefined, r = this.ownerDocument.createRange(), prevTxt = texts.shift(), curText = prevTxt ? texts.shift() : null; - if ((anode === fnode && foffset < aoffset) || (anode !== fnode && (anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_PRECEDING))) { + if ((anode === fnode && foffset < aoffset) || (anode !== fnode && (anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_PRECEDING) && !(anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_CONTAINS))) { fnode = [anode, anode = fnode][0]; foffset = [aoffset, aoffset = foffset][0]; } @@ -442,13 +446,20 @@ var wysihtml5 = { } } + if (felement) { + foffset = Array.prototype.indexOf.call(felement.parentNode.childNodes, felement) + 1; + } + + if (aelement) { + aoffset = Array.prototype.indexOf.call(aelement.parentNode.childNodes, aelement); + } + if (anode && anode.parentNode && fnode && fnode.parentNode) { r.setStart(anode, aoffset); r.setEnd(fnode, foffset); s.removeAllRanges(); s.addRange(r); } - }; Node.prototype.normalize = nf; }; diff --git a/vendor/assets/javascripts/wysihtml.js b/vendor/assets/javascripts/wysihtml.js index d386cb2..33f147c 100644 --- a/vendor/assets/javascripts/wysihtml.js +++ b/vendor/assets/javascripts/wysihtml.js @@ -1,5 +1,5 @@ /** - * @license wysihtml v0.5.0-beta12 + * @license wysihtml v0.5.0-beta13 * https://github.com/Voog/wysihtml * * Author: Christopher Blum (https://github.com/tiff) @@ -10,7 +10,7 @@ * */ var wysihtml5 = { - version: "0.5.0-beta12", + version: "0.5.0-beta13", // namespaces commands: {}, @@ -405,6 +405,8 @@ var wysihtml5 = { return all; }; + + var normalizeFix = function() { var f = Node.prototype.normalize; var nf = function() { @@ -412,13 +414,15 @@ var wysihtml5 = { s = this.ownerDocument.defaultView.getSelection(), anode = s.anchorNode, aoffset = s.anchorOffset, + aelement = anode && anode.nodeType === 1 && anode.childNodes.length > 0 ? anode.childNodes[aoffset] : undefined, fnode = s.focusNode, foffset = s.focusOffset, + felement = fnode && fnode.nodeType === 1 && foffset > 0 ? fnode.childNodes[foffset -1] : undefined, r = this.ownerDocument.createRange(), prevTxt = texts.shift(), curText = prevTxt ? texts.shift() : null; - if ((anode === fnode && foffset < aoffset) || (anode !== fnode && (anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_PRECEDING))) { + if ((anode === fnode && foffset < aoffset) || (anode !== fnode && (anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_PRECEDING) && !(anode.compareDocumentPosition(fnode) & Node.DOCUMENT_POSITION_CONTAINS))) { fnode = [anode, anode = fnode][0]; foffset = [aoffset, aoffset = foffset][0]; } @@ -442,13 +446,20 @@ var wysihtml5 = { } } + if (felement) { + foffset = Array.prototype.indexOf.call(felement.parentNode.childNodes, felement) + 1; + } + + if (aelement) { + aoffset = Array.prototype.indexOf.call(aelement.parentNode.childNodes, aelement); + } + if (anode && anode.parentNode && fnode && fnode.parentNode) { r.setStart(anode, aoffset); r.setEnd(fnode, foffset); s.removeAllRanges(); s.addRange(r); } - }; Node.prototype.normalize = nf; };