diff --git a/public/script.js b/public/script.js index 3ce46d9d0..111b7dfae 100644 --- a/public/script.js +++ b/public/script.js @@ -6436,6 +6436,7 @@ export function saveChatDebounced() { if (chatSaveTimeout) { console.debug('Clearing chat save timeout'); clearTimeout(chatSaveTimeout); + chatSaveTimeout = null; } chatSaveTimeout = setTimeout(async () => { @@ -6452,7 +6453,7 @@ export function saveChatDebounced() { console.debug('Chat save timeout triggered'); await saveChatConditional(); console.debug('Chat saved'); - }, 1000); + }, DEFAULT_SAVE_EDIT_TIMEOUT); } export async function saveChat(chatName, withMetadata, mesId) { @@ -8067,6 +8068,12 @@ export async function saveChatConditional() { } try { + if (chatSaveTimeout) { + console.debug('Debounced chat save canceled'); + clearTimeout(chatSaveTimeout); + chatSaveTimeout = null; + } + isChatSaving = true; if (selected_group) { diff --git a/public/scripts/reasoning.js b/public/scripts/reasoning.js index 80629d3da..66a9ee967 100644 --- a/public/scripts/reasoning.js +++ b/public/scripts/reasoning.js @@ -1048,7 +1048,7 @@ function registerReasoningAppEvents() { if (contentUpdated) { syncMesToSwipe(); - await saveChatConditional(); + saveChatDebounced(); // Find if a message already exists in DOM and must be updated const messageRendered = document.querySelector(`.mes[mesid="${idx}"]`) !== null;