changhe sort events logic (#3174)

This commit is contained in:
Andrey Babushkin 2025-03-18 20:27:48 +03:00 committed by GitHub
parent 15d427418d
commit 2cb33d7894
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -150,10 +150,10 @@ export default class MessageLoader {
}); });
const sortedMsgs = msgs const sortedMsgs = msgs
// .sort((m1, m2) => m1.time - m2.time); // .sort((m1, m2) => m1.time - m2.time)
.sort(brokenDomSorter) .sort(brokenDomSorter)
.sort(sortIframes); .sort(sortIframes);
if (brokenMessages > 0) { if (brokenMessages > 0) {
console.warn( console.warn(
'Broken timestamp messages', 'Broken timestamp messages',
@ -383,7 +383,6 @@ const DOMMessages = [
MType.CreateElementNode, MType.CreateElementNode,
MType.CreateTextNode, MType.CreateTextNode,
MType.MoveNode, MType.MoveNode,
MType.RemoveNode,
MType.CreateIFrameDocument, MType.CreateIFrameDocument,
]; ];
@ -395,6 +394,11 @@ function brokenDomSorter(m1: PlayerMsg, m2: PlayerMsg) {
if (m1.tp !== MType.CreateDocument && m2.tp === MType.CreateDocument) if (m1.tp !== MType.CreateDocument && m2.tp === MType.CreateDocument)
return 1; return 1;
if (m1.tp === MType.RemoveNode)
return 1;
if (m2.tp === MType.RemoveNode)
return -1;
const m1IsDOM = DOMMessages.includes(m1.tp); const m1IsDOM = DOMMessages.includes(m1.tp);
const m2IsDOM = DOMMessages.includes(m2.tp); const m2IsDOM = DOMMessages.includes(m2.tp);
if (m1IsDOM && m2IsDOM) { if (m1IsDOM && m2IsDOM) {