@@ -8,17 +8,19 @@ interface UseStreamActionKeysOptions {
|
||||
onOpenHuddle: () => void;
|
||||
onToggleRecordingMode: () => void;
|
||||
onToggleKeybindings: () => void;
|
||||
onOpenTextReaction: () => void;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reactions 1–7, `h` huddle, `v` toggle recording mode, `?` toggle
|
||||
* keybindings overlay. Skipped while playback is paused for any reason.
|
||||
* Reactions 1–7, `r` quick text reply, `h` huddle, `v` toggle recording mode,
|
||||
* `?` toggle keybindings overlay. Skipped while playback is paused for any reason.
|
||||
*/
|
||||
export function useStreamActionKeys({
|
||||
onToggleReaction,
|
||||
onOpenHuddle,
|
||||
onToggleRecordingMode,
|
||||
onToggleKeybindings,
|
||||
onOpenTextReaction,
|
||||
}: UseStreamActionKeysOptions) {
|
||||
useEffect(() => {
|
||||
const onKeyDown = (e: KeyboardEvent) => {
|
||||
@@ -34,6 +36,10 @@ export function useStreamActionKeys({
|
||||
e.preventDefault();
|
||||
onToggleRecordingMode();
|
||||
break;
|
||||
case "r":
|
||||
e.preventDefault();
|
||||
onOpenTextReaction();
|
||||
break;
|
||||
case "?":
|
||||
e.preventDefault();
|
||||
onToggleKeybindings();
|
||||
@@ -53,5 +59,5 @@ export function useStreamActionKeys({
|
||||
|
||||
window.addEventListener("keydown", onKeyDown);
|
||||
return () => window.removeEventListener("keydown", onKeyDown);
|
||||
}, [onToggleReaction, onOpenHuddle, onToggleRecordingMode, onToggleKeybindings]);
|
||||
}, [onToggleReaction, onOpenHuddle, onToggleRecordingMode, onToggleKeybindings, onOpenTextReaction]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user