diff --git a/web/src/components/overlay/ExportDialog.tsx b/web/src/components/overlay/ExportDialog.tsx index 3ac04cb98..3e9f54e7c 100644 --- a/web/src/components/overlay/ExportDialog.tsx +++ b/web/src/components/overlay/ExportDialog.tsx @@ -112,6 +112,7 @@ export default function ExportDialog({ ); setName(""); setRange(undefined); + setSelectedOption("1"); } }) .catch((error) => { diff --git a/web/src/components/player/HlsVideoPlayer.tsx b/web/src/components/player/HlsVideoPlayer.tsx index 9a7814798..e0d42d6e6 100644 --- a/web/src/components/player/HlsVideoPlayer.tsx +++ b/web/src/components/player/HlsVideoPlayer.tsx @@ -22,6 +22,7 @@ type HlsVideoPlayerProps = { videoRef: MutableRefObject; visible: boolean; currentSource: string; + hotKeys: boolean; onClipEnded?: () => void; onPlayerLoaded?: () => void; onTimeUpdate?: (time: number) => void; @@ -33,6 +34,7 @@ export default function HlsVideoPlayer({ videoRef, visible, currentSource, + hotKeys, onClipEnded, onPlayerLoaded, onTimeUpdate, @@ -161,6 +163,7 @@ export default function HlsVideoPlayer({ controlsOpen={controlsOpen} setControlsOpen={setControlsOpen} playbackRate={videoRef.current?.playbackRate ?? 1} + hotKeys={hotKeys} onPlayPause={(play) => { if (!videoRef.current) { return; diff --git a/web/src/components/player/VideoControls.tsx b/web/src/components/player/VideoControls.tsx index f6fa19d12..b4221c64b 100644 --- a/web/src/components/player/VideoControls.tsx +++ b/web/src/components/player/VideoControls.tsx @@ -41,6 +41,7 @@ type VideoControlsProps = { controlsOpen?: boolean; playbackRates?: number[]; playbackRate: number; + hotKeys?: boolean; setControlsOpen?: (open: boolean) => void; onPlayPause: (play: boolean) => void; onSeek: (diff: number) => void; @@ -55,6 +56,7 @@ export default function VideoControls({ controlsOpen, playbackRates = PLAYBACK_RATE_DEFAULT, playbackRate, + hotKeys = true, setControlsOpen, onPlayPause, onSeek, @@ -130,7 +132,7 @@ export default function VideoControls({ [video, isPlaying, onSeek], ); useKeyboardListener( - ["ArrowLeft", "ArrowRight", "m", " "], + hotKeys ? ["ArrowLeft", "ArrowRight", "m", " "] : [], onKeyboardShortcut, ); diff --git a/web/src/components/player/dynamic/DynamicVideoPlayer.tsx b/web/src/components/player/dynamic/DynamicVideoPlayer.tsx index 3db528165..77e3b78a5 100644 --- a/web/src/components/player/dynamic/DynamicVideoPlayer.tsx +++ b/web/src/components/player/dynamic/DynamicVideoPlayer.tsx @@ -20,6 +20,7 @@ type DynamicVideoPlayerProps = { cameraPreviews: Preview[]; startTimestamp?: number; isScrubbing: boolean; + hotKeys: boolean; onControllerReady: (controller: DynamicVideoController) => void; onTimestampUpdate?: (timestamp: number) => void; onClipEnded?: () => void; @@ -31,6 +32,7 @@ export default function DynamicVideoPlayer({ cameraPreviews, startTimestamp, isScrubbing, + hotKeys, onControllerReady, onTimestampUpdate, onClipEnded, @@ -172,6 +174,7 @@ export default function DynamicVideoPlayer({ videoRef={playerRef} visible={!(isScrubbing || isLoading)} currentSource={source} + hotKeys={hotKeys} onTimeUpdate={onTimeUpdate} onPlayerLoaded={onPlayerLoaded} onClipEnded={onClipEnded} diff --git a/web/src/views/events/RecordingView.tsx b/web/src/views/events/RecordingView.tsx index ce6d03f1c..25f163218 100644 --- a/web/src/views/events/RecordingView.tsx +++ b/web/src/views/events/RecordingView.tsx @@ -322,6 +322,7 @@ export function RecordingView({ timeRange={currentTimeRange} cameraPreviews={allPreviews ?? []} startTimestamp={playbackStart} + hotKeys={exportMode != "select"} onTimestampUpdate={(timestamp) => { setPlayerTime(timestamp); setCurrentTime(timestamp);