From 081369a552d5154431f2b3ffef5720673eab41e8 Mon Sep 17 00:00:00 2001 From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> Date: Thu, 16 Nov 2023 22:03:45 +0000 Subject: [PATCH] do not destroy the editor when it is hidden, fixes #3434 Closes #3434 Merge request studip/studip!2350 --- resources/assets/javascripts/lib/wysiwyg.js | 27 ++++----------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/resources/assets/javascripts/lib/wysiwyg.js b/resources/assets/javascripts/lib/wysiwyg.js index 00f453d59f0..806abaf16ca 100644 --- a/resources/assets/javascripts/lib/wysiwyg.js +++ b/resources/assets/javascripts/lib/wysiwyg.js @@ -33,36 +33,19 @@ const wysiwyg = { getEditor, hasEditor, - replace(textarea) { - if (!hasEditor(textarea)) { - if (isTextareaVisible(textarea)) { - replaceTextarea(textarea); - } - } else if (isEditorHidden(textarea)) { - destroyTextarea(textarea); - } - }, + replace: replaceTextarea, }; export default wysiwyg; -function isTextareaVisible(textarea) { - return $(textarea).is(':visible'); -} - -function isEditorHidden(textarea) { - if (!hasEditor(textarea)) { - return false; - } - const editor = getEditor(textarea); - return editor && editor.ui && $(editor.ui.element).is(':hidden'); -} - async function replaceTextarea(textarea) { - await loadMathJax(); + if (hasEditor(textarea)) { + return getEditor(textarea); + } setEditor(textarea, {}); + await loadMathJax(); const chunk = await STUDIP.loadChunk('wysiwyg'); const $textarea = textarea instanceof jQuery ? textarea : $(textarea); -- GitLab