mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-05-24 02:02:36 -04:00
Use duration from /info endpoint instead of player's duration
This commit is contained in:
parent
0c387fc19a
commit
1f16271354
@ -36,7 +36,7 @@ import { useRouter } from "solito/router";
|
||||
import { useSetAtom } from "jotai";
|
||||
import { useYoshiki } from "yoshiki/native";
|
||||
import { Back, Hover, LoadingIndicator } from "./components/hover";
|
||||
import { fullscreenAtom, Video } from "./state";
|
||||
import { durationAtom, fullscreenAtom, Video } from "./state";
|
||||
import { episodeDisplayNumber } from "../details/episode";
|
||||
import { useVideoKeyboard } from "./keyboard";
|
||||
import { MediaSessionManager } from "./media-session";
|
||||
@ -104,6 +104,11 @@ export const Player = ({
|
||||
};
|
||||
}, [setFullscreen]);
|
||||
|
||||
const setDuration = useSetAtom(durationAtom);
|
||||
useEffect(() => {
|
||||
setDuration(info?.durationSeconds);
|
||||
}, [info, setDuration]);
|
||||
|
||||
if (error || infoError || playbackError)
|
||||
return (
|
||||
<>
|
||||
|
@ -119,7 +119,6 @@ export const Video = memo(function Video({
|
||||
const setPrivateProgress = useSetAtom(privateProgressAtom);
|
||||
const setPublicProgress = useSetAtom(publicProgressAtom);
|
||||
const setBuffered = useSetAtom(bufferedAtom);
|
||||
const setDuration = useSetAtom(durationAtom);
|
||||
useEffect(() => {
|
||||
ref.current?.seek(publicProgress);
|
||||
}, [publicProgress]);
|
||||
@ -217,9 +216,6 @@ export const Video = memo(function Video({
|
||||
setPrivateProgress(progress.currentTime);
|
||||
setBuffered(progress.playableDuration);
|
||||
}}
|
||||
onLoad={(info) => {
|
||||
setDuration(info.duration);
|
||||
}}
|
||||
onPlaybackStateChanged={(state) => setPlay(state.isPlaying)}
|
||||
fonts={fonts}
|
||||
subtitles={subtitles}
|
||||
|
Loading…
x
Reference in New Issue
Block a user