Explorar o código

:art: fix https://github.com/siyuan-note/siyuan/issues/7146

Vanessa %!s(int64=2) %!d(string=hai) anos
pai
achega
c5f52904e9

+ 6 - 1
app/src/protyle/hint/extend.ts

@@ -278,8 +278,11 @@ export const hintTag = (key: string, protyle: IProtyle): IHintData[] => {
         if (response.data.k && !hasKey) {
             dataList.splice(0, 0, {
                 value: `#${response.data.k}#`,
-                html: `<mark>${escapeHtml(response.data.k)}</mark>`,
+                html: `${window.siyuan.languages.new} <mark>${escapeHtml(response.data.k)}</mark>`,
             });
+            if (dataList.length > 1) {
+                dataList[1].focus = true;
+            }
         }
         protyle.hint.genHTML(dataList, protyle, true);
     });
@@ -342,6 +345,8 @@ export const hintRef = (key: string, protyle: IProtyle, isQuick = false): IHintD
                 value: "",
                 html: window.siyuan.languages.emptyContent,
             });
+        } else if (response.data.newDoc && dataList.length > 1) {
+            dataList[1].focus = true;
         }
         protyle.hint.genHTML(dataList, protyle, true, isQuick);
     });

+ 2 - 9
app/src/protyle/hint/index.ts

@@ -191,18 +191,11 @@ ${unicode2Emoji(emoji.unicode, true)}</button>`;
         } else {
             this.element.style.display = "";
         }
-        let hasFocus = false;
         data.forEach((hintData, i) => {
             // https://github.com/siyuan-note/siyuan/issues/1229 提示时,新建文件不应默认选中
             let focusClass = "";
-            if (i === 0) {
-                if (hintData.value.startsWith("((newFile ") && hintData.value.endsWith(`${Lute.Caret}'))`) && data.length > 1) {
-                    focusClass = "";
-                } else {
-                    focusClass = " b3-list-item--focus";
-                    hasFocus = true;
-                }
-            } else if (i === 1 && !hasFocus) {
+            if ((i === 1 && data[i].focus ) ||
+                (i === 0 && (data.length === 1 || !data[1].focus))) {
                 focusClass = " b3-list-item--focus";
             }
             if (hintData.html === "separator") {

+ 1 - 0
app/src/types/protyle.d.ts

@@ -337,6 +337,7 @@ interface IHintData {
     html: string;
     value: string;
     filter?: string[]
+    focus?: boolean
 }
 
 interface IHintExtend {