From 44069b6e7b60cf6dad5c3d17a54f3ae9e09eae9f Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Tue, 24 Mar 2015 12:13:26 +0100 Subject: [PATCH] [FIX] website summernote: Apply a better clean dom to remove error create by the browser contentEditable. --- addons/website/static/src/js/summernote.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/addons/website/static/src/js/summernote.js b/addons/website/static/src/js/summernote.js index 919ea66845d..3716c9a515a 100644 --- a/addons/website/static/src/js/summernote.js +++ b/addons/website/static/src/js/summernote.js @@ -1728,12 +1728,19 @@ define(['summernote/editing/Editor', 'summernote/summernote'], function (Editor) $.summernote.pluginEvents.removeFormat = function (event, editor, layoutInfo, value) { var $editable = layoutInfo.editable(); $editable.data('NoteHistory').recordUndo($editable); + var node = range.create().sc.parentNode; document.execCommand('removeFormat'); - document.execCommand('removeFormat'); + document.execCommand('removeFormat'); // 2 times because some browser don't clean all in one time var r = range.create(); r = dom.merge(node, r.sc, r.so, r.ec, r.eo, null, true); - range.create(r.sc, r.so, r.ec, r.eo).select(); + r = range.create(r.sc, r.so, r.ec, r.eo); + r.select(); + + $.summernote.pluginEvents.justify(event, editor, layoutInfo, ""); + + r.clean().select(); + event.preventDefault(); return false; };