mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-10 04:30:25 +02:00
Use local seekvalue to smooth out slider drag
This commit is contained in:
@@ -111,6 +111,8 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
|
|||||||
return () => clearInterval(interval);
|
return () => clearInterval(interval);
|
||||||
}, [currentPlayerRef, isSeeking, setCurrentTime, playerType, status]);
|
}, [currentPlayerRef, isSeeking, setCurrentTime, playerType, status]);
|
||||||
|
|
||||||
|
const [seekValue, setSeekValue] = useState(0);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<ControlsContainer>
|
<ControlsContainer>
|
||||||
@@ -216,11 +218,16 @@ export const CenterControls = ({ playersRef }: CenterControlsProps) => {
|
|||||||
max={songDuration}
|
max={songDuration}
|
||||||
min={0}
|
min={0}
|
||||||
size={6}
|
size={6}
|
||||||
value={currentTime}
|
value={!isSeeking ? currentTime : seekValue}
|
||||||
w="100%"
|
w="100%"
|
||||||
onChange={(e) => {
|
onChange={(e) => {
|
||||||
|
setIsSeeking(true);
|
||||||
|
setSeekValue(e);
|
||||||
|
}}
|
||||||
|
onChangeEnd={(e) => {
|
||||||
handleSeekSlider(e);
|
handleSeekSlider(e);
|
||||||
setIsSeeking(false);
|
setIsSeeking(false);
|
||||||
|
console.log('end');
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</SliderWrapper>
|
</SliderWrapper>
|
||||||
|
|||||||
Reference in New Issue
Block a user