Clear out waiting for seek state

This commit is contained in:
Nicolas Mowen 2024-03-08 10:05:05 -07:00
parent ce538db892
commit d82d403f72

View File

@ -63,7 +63,6 @@ export default function PreviewVideoPlayer({
if (controller) { if (controller) {
onControllerReady(controller); onControllerReady(controller);
} }
// we only want to fire once when players are ready // we only want to fire once when players are ready
// eslint-disable-next-line react-hooks/exhaustive-deps // eslint-disable-next-line react-hooks/exhaustive-deps
}, [controller]); }, [controller]);
@ -104,6 +103,7 @@ export default function PreviewVideoPlayer({
Math.floor(preview.end) <= timeRange.end, Math.floor(preview.end) <= timeRange.end,
); );
setCurrentPreview(preview); setCurrentPreview(preview);
controller.newPlayback({ controller.newPlayback({
preview, preview,
timeRange, timeRange,
@ -136,8 +136,11 @@ export default function PreviewVideoPlayer({
disableRemotePlayback disableRemotePlayback
onSeeked={onPreviewSeeked} onSeeked={onPreviewSeeked}
onLoadedData={() => { onLoadedData={() => {
previewRef.current?.pause(); if (controller) {
controller?.previewReady(); controller.previewReady();
} else {
previewRef.current?.pause();
}
}} }}
> >
{currentPreview != undefined && ( {currentPreview != undefined && (
@ -169,11 +172,8 @@ export class PreviewVideoController {
newPlayback(newPlayback: PreviewPlayback) { newPlayback(newPlayback: PreviewPlayback) {
this.preview = newPlayback.preview; this.preview = newPlayback.preview;
this.seeking = false;
if (this.preview) { this.timeToSeek = undefined;
this.seeking = false;
this.timeToSeek = undefined;
}
this.timeRange = newPlayback.timeRange; this.timeRange = newPlayback.timeRange;
} }
@ -217,6 +217,8 @@ export class PreviewVideoController {
} }
previewReady() { previewReady() {
this.seeking = false;
this.timeToSeek = undefined;
this.previewRef.current?.pause(); this.previewRef.current?.pause();
} }
} }