From 3b77acbff0285e03d042b71c1eac3e9df632e6da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?nicole=20miko=C5=82ajczyk?= Date: Mon, 13 Oct 2025 13:27:40 +0200 Subject: [PATCH] pl-fe: improve player seek behavior MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: nicole mikołajczyk --- packages/pl-fe/src/features/video/index.tsx | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/packages/pl-fe/src/features/video/index.tsx b/packages/pl-fe/src/features/video/index.tsx index 69ff6e07f..ddbaa36c3 100644 --- a/packages/pl-fe/src/features/video/index.tsx +++ b/packages/pl-fe/src/features/video/index.tsx @@ -222,6 +222,18 @@ const Video: React.FC = ({ }, 60); const handleMouseDown: React.MouseEventHandler = e => { + const wasPlaying = !paused; + + const handleMouseUp = () => { + document.removeEventListener('mousemove', handleMouseMove, true); + document.removeEventListener('mouseup', handleMouseUp, true); + document.removeEventListener('touchmove', handleMouseMove, true); + document.removeEventListener('touchend', handleMouseUp, true); + + setDragging(false); + if (wasPlaying) video.current?.play(); + }; + document.addEventListener('mousemove', handleMouseMove, true); document.addEventListener('mouseup', handleMouseUp, true); document.addEventListener('touchmove', handleMouseMove, true); @@ -235,15 +247,6 @@ const Video: React.FC = ({ e.stopPropagation(); }; - const handleMouseUp = () => { - document.removeEventListener('mousemove', handleMouseMove, true); - document.removeEventListener('mouseup', handleMouseUp, true); - document.removeEventListener('touchmove', handleMouseMove, true); - document.removeEventListener('touchend', handleMouseUp, true); - - setDragging(false); - video.current?.play(); - }; const handleMouseMove = throttle(e => { if (seek.current && video.current) {