From 60efc27f159b8a415d2245b1fe94adc4655cf3aa Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Wed, 21 Jan 2015 11:18:39 +0100 Subject: [PATCH] [FIX] website editor: can't select a picture followed by a br tag --- .../website/static/lib/summernote/src/js/core/range.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/addons/website/static/lib/summernote/src/js/core/range.js b/addons/website/static/lib/summernote/src/js/core/range.js index 0ed938149a5..00c2affd765 100644 --- a/addons/website/static/lib/summernote/src/js/core/range.js +++ b/addons/website/static/lib/summernote/src/js/core/range.js @@ -417,12 +417,18 @@ define([ var endPoint = {node: ec.childNodes.length && ec.childNodes[eo] || ec}; endPoint.offset = endPoint.node === ec ? eo : 0; + if (dom.isImg(startPoint.node)) { + nb ++; + image = startPoint.node; + } dom.walkPoint(startPoint, endPoint, function (point) { + if (!dom.isText(endPoint.node) && point.node === endPoint.node && point.offset === endPoint.offset) { + return; + } var node = point.node.childNodes.length && point.node.childNodes[point.offset] || point.node; var offset = node === point.node ? point.offset : 0; var isImg = dom.ancestor(node, dom.isImg); - - if (!isImg && (node.nodeType !== 3 || (offset && node.textContent.length !== offset && node.textContent.match(/\S|\u00A0/)))) { + if (!isImg && ((!dom.isBR(node) && !dom.isText(node)) || (offset && node.textContent.length !== offset && node.textContent.match(/\S|\u00A0/)))) { nb++; } if (isImg && image !== isImg) {