Allow screen share takeover

This commit is contained in:
codex
2026-06-12 21:54:02 +02:00
parent d391e0fb3b
commit 71cdd06ef5
3 changed files with 45 additions and 5 deletions
+14
View File
@@ -327,6 +327,20 @@ const server = http.createServer(async (req, res) => {
};
if (event.sharing) {
const previous = presentationStates.get(roomId);
if (previous?.peerId && previous.peerId !== payload.from) {
broadcast(roomId, payload.from, {
type: "presentation-state",
from: previous.peerId,
peerId: previous.peerId,
name: previous.name,
sharing: false,
reason: "takeover",
replacedBy: payload.from,
replacedByName: event.name,
updatedAt: Date.now()
});
}
presentationStates.set(roomId, { ...event, peerId: payload.from });
} else if (presentationStates.get(roomId)?.peerId === payload.from) {
presentationStates.delete(roomId);