From d504e2350e071bd4b7edc6672a9d5bdd6174d1b7 Mon Sep 17 00:00:00 2001 From: "Grigorii K. Shartsev" Date: Wed, 5 Jun 2024 21:02:27 +0200 Subject: [PATCH] fix(UserStatus): emit user_status:status.updated on init Signed-off-by: Grigorii K. Shartsev --- src/talk/renderer/UserStatus/userStatus.store.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/talk/renderer/UserStatus/userStatus.store.js b/src/talk/renderer/UserStatus/userStatus.store.js index 488194ca..25cffd50 100644 --- a/src/talk/renderer/UserStatus/userStatus.store.js +++ b/src/talk/renderer/UserStatus/userStatus.store.js @@ -22,7 +22,7 @@ const restorePredefinedStatuses = () => JSON.parse(localStorage.getItem('TalkDes export const useUserStatusStore = defineStore('userStatus', () => { /** @type {import('vue').Ref} */ - const userStatus = ref(restoreUserStatus()) + const userStatus = ref(null) /** @type {import('vue').Ref} */ const predefinedStatuses = ref(restorePredefinedStatuses()) @@ -30,8 +30,6 @@ export const useUserStatusStore = defineStore('userStatus', () => { /** @type {import('vue').Ref} */ const backupStatus = ref(null) - watch(userStatus, (newUserStatus) => cacheUserStatus(newUserStatus), { deep: true }) - const emitUserStatusUpdated = () => emit('user_status:status.updated', { status: userStatus.value.status, message: userStatus.value.message, @@ -93,6 +91,13 @@ export const useUserStatusStore = defineStore('userStatus', () => { } } + const cachedStatus = restoreUserStatus() + if (cachedStatus) { + setUserStatus(cachedStatus, true) + } + + watch(userStatus, (newUserStatus) => cacheUserStatus(newUserStatus), { deep: true }) + const initPromise = (async () => { await updateUserStatusWithHeartbeat(false, true)