소스 검색

:art: https://github.com/siyuan-note/siyuan/issues/11572

Vanessa 1 년 전
부모
커밋
b153b56544
1개의 변경된 파일21개의 추가작업 그리고 0개의 파일을 삭제
  1. 21 0
      app/src/protyle/wysiwyg/index.ts

+ 21 - 0
app/src/protyle/wysiwyg/index.ts

@@ -1816,6 +1816,27 @@ export class WYSIWYG {
                 event.preventDefault();
                 event.preventDefault();
                 return;
                 return;
             }
             }
+            if (!blockElement) {
+                return;
+            }
+            // 链接,备注,样式,引用,pdf标注粘贴 https://github.com/siyuan-note/siyuan/issues/11572
+            const range = getSelection().getRangeAt(0);
+            const inlineElement = range.startContainer.parentElement;
+            if (range.toString() === "" && inlineElement.tagName === "SPAN") {
+                const currentTypes = (inlineElement.getAttribute("data-type") || "").split(" ");
+                if (currentTypes.includes("inline-memo") || currentTypes.includes("text") ||
+                    currentTypes.includes("block-ref") || currentTypes.includes("file-annotation-ref") ||
+                    currentTypes.includes("a")) {
+                    const offset = getSelectionOffset(inlineElement, blockElement, range);
+                    if (offset.start === 0) {
+                        range.setStartBefore(inlineElement);
+                        range.collapse(true);
+                    } else if (offset.start === inlineElement.textContent.length) {
+                        range.setEndAfter(inlineElement);
+                        range.collapse(false);
+                    }
+                }
+            }
             paste(protyle, event);
             paste(protyle, event);
         });
         });