Correctly handle window losing focus
This commit is contained in:
parent
d09c3d8374
commit
6855e61c47
1 changed files with 22 additions and 2 deletions
|
@ -404,6 +404,8 @@ export function useGroupCall(groupCall: GroupCall): UseGroupCallReturnType {
|
||||||
}
|
}
|
||||||
}, [t]);
|
}, [t]);
|
||||||
|
|
||||||
|
const [spacebarHeld, setSpacebarHeld] = useState(false);
|
||||||
|
|
||||||
useEventTarget(
|
useEventTarget(
|
||||||
window,
|
window,
|
||||||
"keydown",
|
"keydown",
|
||||||
|
@ -420,10 +422,16 @@ export function useGroupCall(groupCall: GroupCall): UseGroupCallReturnType {
|
||||||
} else if (event.key == "v") {
|
} else if (event.key == "v") {
|
||||||
toggleLocalVideoMuted();
|
toggleLocalVideoMuted();
|
||||||
} else if (event.key === " ") {
|
} else if (event.key === " ") {
|
||||||
|
setSpacebarHeld(true);
|
||||||
setMicrophoneMuted(false);
|
setMicrophoneMuted(false);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[toggleLocalVideoMuted, toggleMicrophoneMuted, setMicrophoneMuted]
|
[
|
||||||
|
toggleLocalVideoMuted,
|
||||||
|
toggleMicrophoneMuted,
|
||||||
|
setMicrophoneMuted,
|
||||||
|
setSpacebarHeld,
|
||||||
|
]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -439,13 +447,25 @@ export function useGroupCall(groupCall: GroupCall): UseGroupCallReturnType {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event.key === " ") {
|
if (event.key === " ") {
|
||||||
|
setSpacebarHeld(false);
|
||||||
setMicrophoneMuted(true);
|
setMicrophoneMuted(true);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[setMicrophoneMuted]
|
[setMicrophoneMuted, setSpacebarHeld]
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
useEventTarget(
|
||||||
|
window,
|
||||||
|
"blur",
|
||||||
|
useCallback(() => {
|
||||||
|
if (spacebarHeld) {
|
||||||
|
setSpacebarHeld(false);
|
||||||
|
setMicrophoneMuted(true);
|
||||||
|
}
|
||||||
|
}, [setMicrophoneMuted, setSpacebarHeld, spacebarHeld])
|
||||||
|
);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
state,
|
state,
|
||||||
calls,
|
calls,
|
||||||
|
|
Loading…
Add table
Reference in a new issue