X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/a6bbe4698741a5221f22fa7818a0a3037a54430a..refs/pull/1819/head:/resources/js/services/code.js diff --git a/resources/js/services/code.js b/resources/js/services/code.js index 3fcf74125..93c3e431f 100644 --- a/resources/js/services/code.js +++ b/resources/js/services/code.js @@ -97,7 +97,7 @@ function highlight() { function highlightElem(elem) { const innerCodeElem = elem.querySelector('code[class^=language-]'); elem.innerHTML = elem.innerHTML.replace(//gi ,'\n'); - const content = elem.textContent.trim(); + const content = elem.textContent; let mode = ''; if (innerCodeElem !== null) { @@ -258,10 +258,18 @@ function setMode(cmInstance, modeSuggestion, content) { function setContent(cmInstance, codeContent) { cmInstance.setValue(codeContent); setTimeout(() => { - cmInstance.refresh(); + updateLayout(cmInstance); }, 10); } +/** + * Update the layout (codemirror refresh) of a cm instance. + * @param cmInstance + */ +function updateLayout(cmInstance) { + cmInstance.refresh(); +} + /** * Get a CodeMirror instance to use for the markdown editor. * @param {HTMLElement} elem @@ -301,6 +309,7 @@ export default { popupEditor: popupEditor, setMode: setMode, setContent: setContent, + updateLayout: updateLayout, markdownEditor: markdownEditor, getMetaKey: getMetaKey, };