CM6: Further fixes/improvements after testing

- Updated event naming to be "cm6" when codemirror-specific.
- Removed cm block border in md editor to prevent double bordering.
- Updated copy handling to fallback to execCommand.
This commit is contained in:
Dan Brown 2023-04-18 15:08:17 +01:00
parent 3e738b1471
commit baf5edd73a
No known key found for this signature in database
GPG key ID: 46D9F943C24A2EF9
4 changed files with 18 additions and 4 deletions

View file

@ -196,7 +196,7 @@ export function markdownEditor(elem, onChange, domEventHandlers, keyBindings) {
};
// Emit a pre-event public event to allow tweaking of the configure before view creation.
window.$events.emitPublic(elem, 'editor-markdown-cm::pre-init', {cmEditorViewConfig: config});
window.$events.emitPublic(elem, 'editor-markdown-cm6::pre-init', {editorViewConfig: config});
// Create editor view, hide original input
const ev = createView(config);

View file

@ -51,8 +51,20 @@ export class Clipboard {
}
}
export function copyTextToClipboard(text) {
return navigator.clipboard.writeText(text);
export async function copyTextToClipboard(text) {
if (window.isSecureContext && navigator.clipboard) {
await navigator.clipboard.writeText(text);
return;
}
// Backup option where we can't use the navigator.clipboard API
const tempInput = document.createElement("textarea");
tempInput.style = "position: absolute; left: -1000px; top: -1000px;";
tempInput.value = text;
document.body.appendChild(tempInput);
tempInput.select();
document.execCommand("copy");
document.body.removeChild(tempInput);
}
export default Clipboard;

View file

@ -6,11 +6,11 @@
font-size: 12px;
border: 1px solid #ddd;
line-height: 1.4;
margin-bottom: $-l;
}
.page-content .cm-editor,
.CodeMirrorContainer .cm-editor {
margin-bottom: $-l;
border-radius: 4px;
}

View file

@ -86,6 +86,8 @@
.markdown-editor-wrap .cm-editor {
flex: 1;
max-width: 100%;
border: 0;
margin: 0;
}
.markdown-panel-divider {