mirror of
https://github.com/Shik3i/KoalaSync.git
synced 2026-08-28 19:47:25 +00:00
fix(extension): reset reconnectAttempts on leave to prevent stale reconnecting status
After LEAVE_ROOM or idle-leave, reconnectAttempts was not reset. GET_STATUS would return 'reconnecting' instead of 'disconnected', showing wrong status in popup and leaving Retry button visible.
This commit is contained in:
@@ -406,6 +406,9 @@ function clearTargetTabForIdle() {
|
|||||||
async function leaveRoomAfterIdleGrace(reason) {
|
async function leaveRoomAfterIdleGrace(reason) {
|
||||||
if (!currentRoom) return;
|
if (!currentRoom) return;
|
||||||
connectIntent = false;
|
connectIntent = false;
|
||||||
|
reconnectFailed = false;
|
||||||
|
reconnectAttempts = 0;
|
||||||
|
chrome.storage.session.set({ reconnectFailed: false, reconnectAttempts: 0, reconnectStartTime: null });
|
||||||
emit(EVENTS.LEAVE_ROOM, { peerId });
|
emit(EVENTS.LEAVE_ROOM, { peerId });
|
||||||
forceDisconnect();
|
forceDisconnect();
|
||||||
currentRoom = null;
|
currentRoom = null;
|
||||||
@@ -1500,6 +1503,9 @@ async function handleAsyncMessage(message, sender, sendResponse) {
|
|||||||
});
|
});
|
||||||
} else if (message.type === 'LEAVE_ROOM') {
|
} else if (message.type === 'LEAVE_ROOM') {
|
||||||
connectIntent = false;
|
connectIntent = false;
|
||||||
|
reconnectFailed = false;
|
||||||
|
reconnectAttempts = 0;
|
||||||
|
chrome.storage.session.set({ reconnectFailed: false, reconnectAttempts: 0, reconnectStartTime: null });
|
||||||
resetAudioProcessingInTab(currentTabId);
|
resetAudioProcessingInTab(currentTabId);
|
||||||
emit(EVENTS.LEAVE_ROOM, { peerId });
|
emit(EVENTS.LEAVE_ROOM, { peerId });
|
||||||
currentRoom = null;
|
currentRoom = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user