diff --git a/src/public/javascripts/services/tree.js b/src/public/javascripts/services/tree.js index c159fedc7..ef32c609d 100644 --- a/src/public/javascripts/services/tree.js +++ b/src/public/javascripts/services/tree.js @@ -635,7 +635,7 @@ async function createNote(node, parentNoteId, target, extraOptions = {}) { extraOptions.saveSelection = false; } - if (extraOptions.saveSelection) { + if (extraOptions.saveSelection && utils.isCKEditorInitialized()) { [extraOptions.title, extraOptions.content] = parseSelectedHtml(window.cutToNote.getSelectedHtml()); } @@ -648,7 +648,7 @@ async function createNote(node, parentNoteId, target, extraOptions = {}) { type: extraOptions.type }); - if (extraOptions.saveSelection) { + if (extraOptions.saveSelection && utils.isCKEditorInitialized()) { // we remove the selection only after it was saved to server to make sure we don't lose anything window.cutToNote.removeSelection(); } @@ -870,7 +870,7 @@ window.glob.cutIntoNote = () => createNoteInto(true); keyboardActionService.setGlobalActionHandler('CutIntoNote', () => createNoteInto(true)); -keyboardActionService.setGlobalActionHandler('CreateNoteInto', createNoteInto); +keyboardActionService.setGlobalActionHandler('CreateNoteInto', () => createNoteInto(true)); keyboardActionService.setGlobalActionHandler('ScrollToActiveNote', scrollToActiveNote); diff --git a/src/public/javascripts/services/utils.js b/src/public/javascripts/services/utils.js index 2c6c0e9f1..b4b51a0f9 100644 --- a/src/public/javascripts/services/utils.js +++ b/src/public/javascripts/services/utils.js @@ -248,6 +248,10 @@ function copySelectionToClipboard() { } } +function isCKEditorInitialized() { + return !!(window && window.cutToNote); +} + export default { reloadApp, parseDate, @@ -281,5 +285,6 @@ export default { clearBrowserCache, getUrlForDownload, normalizeShortcut, - copySelectionToClipboard + copySelectionToClipboard, + isCKEditorInitialized }; \ No newline at end of file