From 3aa98db23dd98055eb07084a7d65af31c4f56f85 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Mon, 30 Dec 2024 10:16:06 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/13652 --- app/src/protyle/header/Title.ts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/app/src/protyle/header/Title.ts b/app/src/protyle/header/Title.ts index 29cd79c24..cc1ea8b04 100644 --- a/app/src/protyle/header/Title.ts +++ b/app/src/protyle/header/Title.ts @@ -46,7 +46,16 @@ export class Title { this.editElement.addEventListener("paste", (event: ClipboardEvent) => { event.stopPropagation(); event.preventDefault(); - document.execCommand("insertText", false, replaceFileName(event.clipboardData.getData("text/plain"))); + const range = getSelection().getRangeAt(0) + let text = event.clipboardData.getData("text/siyuan") + range.deleteContents(); + if (text) { + text = protyle.lute.BlockDOM2Content(text) + } else { + text = event.clipboardData.getData("text/plain") + } + range.insertNode(document.createTextNode(replaceFileName(text))); + range.collapse(false); this.rename(protyle); }); this.editElement.addEventListener("click", () => { @@ -220,10 +229,7 @@ export class Title { accelerator: "⌘V", click: async () => { focusByRange(getEditorRange(this.editElement)); - // 不能使用 execCommand https://github.com/siyuan-note/siyuan/issues/7045 - const text = await readText(); - document.execCommand("insertText", false, replaceFileName(text)); - this.rename(protyle); + document.execCommand("paste"); } }).element); window.siyuan.menus.menu.append(new MenuItem({