diff --git a/ts/editor/CodeMirror.svelte b/ts/editor/CodeMirror.svelte index d2859ee10..204d22161 100644 --- a/ts/editor/CodeMirror.svelte +++ b/ts/editor/CodeMirror.svelte @@ -30,7 +30,6 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html export let configuration: CodeMirrorLib.EditorConfiguration; export let code: Writable; - export let hidden = false; const defaultConfiguration = { rtlMoveVisually: true, @@ -80,7 +79,6 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html use:openCodeMirror={{ configuration: { ...configuration, ...defaultConfiguration }, resolve, - hidden, }} /> diff --git a/ts/editor/code-mirror.ts b/ts/editor/code-mirror.ts index 91d8f0ef3..f9dbb9d3e 100644 --- a/ts/editor/code-mirror.ts +++ b/ts/editor/code-mirror.ts @@ -63,37 +63,24 @@ export function focusAndSetCaret( interface OpenCodeMirrorOptions { configuration: CodeMirror.EditorConfiguration; resolve(editor: CodeMirror.EditorFromTextArea): void; - hidden: boolean; } export function openCodeMirror( textarea: HTMLTextAreaElement, - options: Partial, + { configuration, resolve }: Partial, ): { update: (options: Partial) => void; destroy: () => void } { - let editor: CodeMirror.EditorFromTextArea; + const editor = CodeMirror.fromTextArea(textarea, configuration); + resolve?.(editor); - function update({ - configuration, - resolve, - hidden, - }: Partial): void { - if (editor) { + return { + update({ configuration }: Partial): void { for (const key in configuration) { editor.setOption( key as keyof CodeMirror.EditorConfiguration, configuration[key], ); } - } else if (!hidden) { - editor = CodeMirror.fromTextArea(textarea, configuration); - resolve?.(editor); - } - } - - update(options); - - return { - update, + }, destroy(): void { editor.toTextArea(); }, diff --git a/ts/editor/plain-text-input/PlainTextInput.svelte b/ts/editor/plain-text-input/PlainTextInput.svelte index c639ffa76..7556d9364 100644 --- a/ts/editor/plain-text-input/PlainTextInput.svelte +++ b/ts/editor/plain-text-input/PlainTextInput.svelte @@ -136,13 +136,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html class:hidden on:focusin={() => ($focusedInput = api)} > - +