Add better leave call behavior

This commit is contained in:
Robert Long 2021-07-27 15:49:00 -07:00
commit 802a08987d
2 changed files with 30 additions and 0 deletions

View file

@ -116,6 +116,18 @@ export function useVideoRoom(manager, roomId, timeout = 5000) {
error: undefined,
});
useEffect(() => {
function onBeforeUnload(event) {
manager.leaveCall();
}
window.addEventListener("beforeunload", onBeforeUnload);
return () => {
window.removeEventListener("beforeunload", onBeforeUnload);
};
}, [manager]);
useEffect(() => {
setState((prevState) => ({
...prevState,
@ -169,6 +181,7 @@ export function useVideoRoom(manager, roomId, timeout = 5000) {
return () => {
manager.client.removeListener("Room", roomCallback);
manager.leaveCall();
clearTimeout(timeoutId);
};
}, [roomId]);