diff --git a/frontend/app/player/web/MessageManager.ts b/frontend/app/player/web/MessageManager.ts index d09c3f241..e38339163 100644 --- a/frontend/app/player/web/MessageManager.ts +++ b/frontend/app/player/web/MessageManager.ts @@ -221,8 +221,9 @@ export default class MessageManager { } } - lastMsgArr.sort((a, b) => a[1] - b[1]); - lastMsgArr.forEach(([tabId, lastMessageTs]) => { + lastMsgArr + .sort((a, b) => a[1] - b[1]) + .forEach(([tabId, lastMessageTs]) => { this.tabCloseManager.append({ tabId, time: lastMessageTs }); }); }; @@ -371,6 +372,9 @@ export default class MessageManager { this.mouseThrashingManager.append(msg); break; case MType.MouseMove: + if (this.tabs[msg.tabId].lastMessageTs < msg.time) { + this.tabs[msg.tabId].lastMessageTs = msg.time; + } this.mouseMoveManager.append(msg); break; case MType.MouseClickDeprecated: diff --git a/frontend/app/player/web/TabManager.ts b/frontend/app/player/web/TabManager.ts index 4e2cb61d3..b9af590b3 100644 --- a/frontend/app/player/web/TabManager.ts +++ b/frontend/app/player/web/TabManager.ts @@ -200,7 +200,9 @@ export default class TabSessionManager { firstTitleSet = false distributeMessage(msg: Message): void { - this.lastMessageTs = msg.time; + if (this.lastMessageTs < msg.time) { + this.lastMessageTs = msg.time; + } switch (msg.tp) { case MType.CanvasNode: const managerId = `${msg.timestamp}_${msg.nodeId}`;