diff --git a/app/src/editor/util.ts b/app/src/editor/util.ts index ec57ac076..8675da269 100644 --- a/app/src/editor/util.ts +++ b/app/src/editor/util.ts @@ -313,7 +313,7 @@ const getUnInitTab = (options: IOpenFileOptions) => { item.headElement.setAttribute("data-initdata", JSON.stringify(initObj)); item.parent.switchTab(item.headElement); return true; - } else if (initObj.instance === "Custom" && options.custom && objEquals(initObj.customModelData, options.custom.data)) { + } else if (initObj.instance === "Custom" && options.custom && objEquals(initObj.customModelData, options.custom.data)) { item.parent.switchTab(item.headElement); return true; } diff --git a/app/src/protyle/wysiwyg/transaction.ts b/app/src/protyle/wysiwyg/transaction.ts index ec0d0d549..89a49af4c 100644 --- a/app/src/protyle/wysiwyg/transaction.ts +++ b/app/src/protyle/wysiwyg/transaction.ts @@ -316,11 +316,13 @@ const updateEmbed = (protyle: IProtyle, operation: IOperation) => { }; export const promiseTransactions = () => { + window.clearInterval(window.siyuan.transactionsTimeout); window.siyuan.transactionsTimeout = window.setInterval(() => { if (window.siyuan.transactions.length === 0) { return; } window.clearInterval(window.siyuan.transactionsTimeout); + window.siyuan.transactionsTimeout = undefined; promiseTransaction(); }, Constants.TIMEOUT_INPUT * 2); }; @@ -930,6 +932,9 @@ export const transaction = (protyle: IProtyle, doOperations: IOperation[], undoO }); } protyle.transactionTime = time; + if (typeof window.siyuan.transactionsTimeout === "undefined") { + promiseTransactions(); + } }; export const updateTransaction = (protyle: IProtyle, id: string, newHTML: string, html: string) => {