mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-05-03 10:00:07 -04:00
One more socket listener moved to Portal (#1507)
* room-user-change listener moved to Portal * Eliminate useless checks * Update src/components/App.tsx Co-Authored-By: Lipis <lipiridis@gmail.com> Co-authored-by: Lipis <lipiridis@gmail.com>
This commit is contained in:
parent
77f76a263b
commit
dd1dfc5950
2 changed files with 23 additions and 18 deletions
|
@ -971,22 +971,6 @@ class App extends React.Component<any, AppState> {
|
|||
}
|
||||
initialize();
|
||||
});
|
||||
this.portal.socket!.on("room-user-change", (clients: string[]) => {
|
||||
this.setState((state) => {
|
||||
const collaborators: typeof state.collaborators = new Map();
|
||||
for (const socketID of clients) {
|
||||
if (state.collaborators.has(socketID)) {
|
||||
collaborators.set(socketID, state.collaborators.get(socketID)!);
|
||||
} else {
|
||||
collaborators.set(socketID, {});
|
||||
}
|
||||
}
|
||||
return {
|
||||
...state,
|
||||
collaborators,
|
||||
};
|
||||
});
|
||||
});
|
||||
|
||||
this.setState({
|
||||
isCollaborating: true,
|
||||
|
@ -995,6 +979,24 @@ class App extends React.Component<any, AppState> {
|
|||
}
|
||||
};
|
||||
|
||||
// Portal-only
|
||||
setCollaborators(sockets: string[]) {
|
||||
this.setState((state) => {
|
||||
const collaborators: typeof state.collaborators = new Map();
|
||||
for (const socketID of sockets) {
|
||||
if (state.collaborators.has(socketID)) {
|
||||
collaborators.set(socketID, state.collaborators.get(socketID)!);
|
||||
} else {
|
||||
collaborators.set(socketID, {});
|
||||
}
|
||||
}
|
||||
return {
|
||||
...state,
|
||||
collaborators,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
private broadcastMouseLocation = (payload: {
|
||||
pointerCoords: SocketUpdateDataSource["MOUSE_LOCATION"]["payload"]["pointerCoords"];
|
||||
button: SocketUpdateDataSource["MOUSE_LOCATION"]["payload"]["button"];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue