From e52b3afea9dfaf2e1a026e92c17ea4cca4958eff Mon Sep 17 00:00:00 2001 From: Cohee <18619528+Cohee1207@users.noreply.github.com> Date: Sat, 17 May 2025 08:45:12 +0300 Subject: [PATCH] Wait for current chat to finish saving before allowing to switch --- public/script.js | 1 + public/scripts/group-chats.js | 2 ++ 2 files changed, 3 insertions(+) diff --git a/public/script.js b/public/script.js index 26364483b..360e5ae92 100644 --- a/public/script.js +++ b/public/script.js @@ -7299,6 +7299,7 @@ function getFirstMessage() { } export async function openCharacterChat(file_name) { + await waitUntilCondition(() => !isChatSaving, debounce_timeout.extended, 10); await clearChat(); characters[this_chid]['chat'] = file_name; chat.length = 0; diff --git a/public/scripts/group-chats.js b/public/scripts/group-chats.js index b3b0f3806..1c579a53d 100644 --- a/public/scripts/group-chats.js +++ b/public/scripts/group-chats.js @@ -16,6 +16,7 @@ import { localizePagination, renderPaginationDropdown, paginationDropdownChangeHandler, + waitUntilCondition, } from './utils.js'; import { RA_CountCharTokens, humanizedDateTime, dragElement, favsToHotswap, getMessageTimeStamp } from './RossAscends-mods.js'; import { power_user, loadMovingUIState, sortEntitiesList } from './power-user.js'; @@ -1912,6 +1913,7 @@ export async function getGroupPastChats(groupId) { } export async function openGroupChat(groupId, chatId) { + await waitUntilCondition(() => !isChatSaving, debounce_timeout.extended, 10); const group = groups.find(x => x.id === groupId); if (!group || !group.chats.includes(chatId)) {