From fba356c0809bbaf15edc80689e2dd11050ab7241 Mon Sep 17 00:00:00 2001 From: Vincent Schippefilt Date: Wed, 4 Apr 2018 09:15:07 +0200 Subject: [PATCH] [FIX] web_editor: fix crash when hitting SHIFT+TAB on an empty editor repro : open any editor (like tasks), empty its content and hit SHIFT+TAB before this fix: you get a traceback after this fix: you don't get a traceback --- addons/web_editor/static/src/js/editor/summernote.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/addons/web_editor/static/src/js/editor/summernote.js b/addons/web_editor/static/src/js/editor/summernote.js index 6939c90cefa..3e11cdc6886 100644 --- a/addons/web_editor/static/src/js/editor/summernote.js +++ b/addons/web_editor/static/src/js/editor/summernote.js @@ -1060,10 +1060,12 @@ $.summernote.pluginEvents.tab = function (event, editor, layoutInfo, outdent) { } else { r = dom.merge(r.sc.parentNode, r.sc, r.so, r.ec, r.eo, null, true); r = range.create(r.sc, r.so, r.ec, r.eo); - next = r.sc.splitText(r.so); - r.sc.textContent = r.sc.textContent.replace(/(\u00A0)+$/g, ''); - next.textContent = next.textContent.replace(/^(\u00A0)+/g, ''); - range.create(r.sc, r.sc.textContent.length, r.sc, r.sc.textContent.length).select(); + if (r.sc.splitText) { + next = r.sc.splitText(r.so); + r.sc.textContent = r.sc.textContent.replace(/(\u00A0)+$/g, ''); + next.textContent = next.textContent.replace(/^(\u00A0)+/g, ''); + range.create(r.sc, r.sc.textContent.length, r.sc, r.sc.textContent.length).select(); + } } } }