From d052c7a7aa92f8e33f393e8f3200c03541b61291 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Sun, 10 Mar 2024 11:13:15 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/10550 --- app/src/protyle/render/av/render.ts | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/app/src/protyle/render/av/render.ts b/app/src/protyle/render/av/render.ts index f4428fa3d..427b52254 100644 --- a/app/src/protyle/render/av/render.ts +++ b/app/src/protyle/render/av/render.ts @@ -307,22 +307,10 @@ ${cell.color ? `color:${cell.color};` : ""}">${renderCell(cell.value)}`; } else { viewsElement.classList.remove("av__views--show"); } + updateSearch(e, protyle) }); - searchInputElement.addEventListener("keydown", (event: KeyboardEvent) => { - if (event.isComposing) { - return; - } - if (event.key === "Enter") { - e.removeAttribute("data-render"); - avRender(e, protyle) - event.preventDefault(); - } - }); - searchInputElement.addEventListener("compositionend", (event: KeyboardEvent) => { - if (event.key === "Enter") { - // todo - event.preventDefault(); - } + searchInputElement.addEventListener("compositionend", () => { + updateSearch(e, protyle) }); searchInputElement.addEventListener("blur", (event: KeyboardEvent) => { if (event.isComposing) { @@ -351,6 +339,16 @@ ${cell.color ? `color:${cell.color};` : ""}">${renderCell(cell.value)}`; } }; +let searchTimeout: number + +const updateSearch = (e: HTMLElement, protyle: IProtyle) => { + clearTimeout(searchTimeout) + searchTimeout = window.setTimeout(() => { + e.removeAttribute("data-render"); + avRender(e, protyle) + }, Constants.TIMEOUT_INPUT); +} + const refreshTimeouts: { [key: string]: number; } = {};