Skip to content

Commit 032e318

Browse files
committed
fix: improve chat teleportation logic and local storage handling
1 parent 040c300 commit 032e318

2 files changed

Lines changed: 12 additions & 3 deletions

File tree

custom/ChatSurface.vue

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,13 @@ onMounted(async () => {
106106
if( coreStore.isMobile ) {
107107
agentStore.setIsTeleportedToBody(false);
108108
} else {
109-
agentStore.setIsTeleportedToBody(isTeleportedToBodyFromLocalStorage || props.meta.stickByDefault);
109+
const shouldTeleportToBody = isTeleportedToBodyFromLocalStorage || props.meta.stickByDefault;
110+
const savedIsChatOpen = agentStore.getLocalStorageItem('isChatOpen');
111+
112+
agentStore.setIsTeleportedToBody(shouldTeleportToBody);
113+
if (shouldTeleportToBody && savedIsChatOpen === null) {
114+
agentStore.setIsChatOpen(true);
115+
}
110116
}
111117
await agentStore.fetchSessionsList();
112118
});

custom/composables/useAgentStore.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,10 @@ export const useAgentStore = defineStore('agent', () => {
174174
if (!coreStore.isMobile) {
175175
const savedIsTeleportedToBody = getLocalStorageItem('isTeleportedToBody');
176176
const savedIsTeleportedToBodyBeforeFullScreen = getLocalStorageItem('isTeleportedToBodyBeforeFullScreen');
177-
const isTeleportedToBodyFromLocalStorage = savedIsTeleportedToBody === 'true' || savedIsTeleportedToBodyBeforeFullScreen === 'true';
177+
let isTeleportedToBodyFromLocalStorage = true;
178+
if (savedIsTeleportedToBody !== null || savedIsTeleportedToBodyBeforeFullScreen !== null) {
179+
isTeleportedToBodyFromLocalStorage = savedIsTeleportedToBody === 'true' || savedIsTeleportedToBodyBeforeFullScreen === 'true';
180+
}
178181
const savedIsChatOpen = getLocalStorageItem('isChatOpen');
179182

180183
setIsTeleportedToBody(isTeleportedToBodyFromLocalStorage);
@@ -374,4 +377,4 @@ export const useAgentStore = defineStore('agent', () => {
374377
setCurrentChatStatus,
375378
updateLastAgentMessage
376379
}
377-
})
380+
})

0 commit comments

Comments
 (0)