summaryrefslogtreecommitdiff
path: root/apps/web/src/components/ui/video-player.tsx
diff options
context:
space:
mode:
authorHyteq <DerpsDer.es@gmail.com>2025-06-24 08:22:24 +0300
committerHyteq <DerpsDer.es@gmail.com>2025-06-24 08:22:24 +0300
commit65bff0d2da7ca32436bb5c081c1d4a83d539f11c (patch)
tree410616249a476df8d9e6bbbd5f616d3963b9bbad /apps/web/src/components/ui/video-player.tsx
parente29e0892ac92402dc6258aed2d0bc7e8cc5085b7 (diff)
parent612d0d8c15a34aefa4995c96523bbf1e9411a6da (diff)
downloadopencut-65bff0d2da7ca32436bb5c081c1d4a83d539f11c.tar.gz
fix: merge conflicts, merge
Diffstat (limited to 'apps/web/src/components/ui/video-player.tsx')
-rw-r--r--apps/web/src/components/ui/video-player.tsx14
1 files changed, 8 insertions, 6 deletions
diff --git a/apps/web/src/components/ui/video-player.tsx b/apps/web/src/components/ui/video-player.tsx
index f489f70a..32a12916 100644
--- a/apps/web/src/components/ui/video-player.tsx
+++ b/apps/web/src/components/ui/video-player.tsx
@@ -34,7 +34,8 @@ export function VideoPlayer({
const video = videoRef.current;
if (!video || !isInClipRange) return;
- const handleSeek = (e: CustomEvent) => {
+ const handleSeekEvent = (e: CustomEvent) => {
+ // Always update video time, even if outside clip range
const timelineTime = e.detail.time;
const videoTime = Math.max(trimStart, Math.min(
clipDuration - trimEnd,
@@ -43,7 +44,8 @@ export function VideoPlayer({
video.currentTime = videoTime;
};
- const handleUpdate = (e: CustomEvent) => {
+ const handleUpdateEvent = (e: CustomEvent) => {
+ // Always update video time, even if outside clip range
const timelineTime = e.detail.time;
const targetTime = Math.max(trimStart, Math.min(
clipDuration - trimEnd,
@@ -59,13 +61,13 @@ export function VideoPlayer({
video.playbackRate = e.detail.speed;
};
- window.addEventListener("playback-seek", handleSeek as EventListener);
- window.addEventListener("playback-update", handleUpdate as EventListener);
+ window.addEventListener("playback-seek", handleSeekEvent as EventListener);
+ window.addEventListener("playback-update", handleUpdateEvent as EventListener);
window.addEventListener("playback-speed", handleSpeed as EventListener);
return () => {
- window.removeEventListener("playback-seek", handleSeek as EventListener);
- window.removeEventListener("playback-update", handleUpdate as EventListener);
+ window.removeEventListener("playback-seek", handleSeekEvent as EventListener);
+ window.removeEventListener("playback-update", handleUpdateEvent as EventListener);
window.removeEventListener("playback-speed", handleSpeed as EventListener);
};
}, [clipStartTime, trimStart, trimEnd, clipDuration, isInClipRange]);