diff options
| author | Vincent Schippefilt <vsc@odoo.com> | 2018-04-04 09:15:07 +0200 |
|---|---|---|
| committer | Vincent Schippefilt <vsc@odoo.com> | 2018-04-10 09:39:08 +0200 |
| commit | fba356c0809bbaf15edc80689e2dd11050ab7241 (patch) | |
| tree | b7e7a8e856602231305c7287661b32012c8e8a35 /addons/web_editor/static/src/js/editor/summernote.js | |
| parent | bc1bba446a57e6b91c76c90a9b2a1d33772480c1 (diff) | |
[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
Diffstat (limited to 'addons/web_editor/static/src/js/editor/summernote.js')
| -rw-r--r-- | addons/web_editor/static/src/js/editor/summernote.js | 10 |
1 files 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(); + } } } } |
