diff --git a/src/features/MultiSourcePlayer/hooks/index.tsx b/src/features/MultiSourcePlayer/hooks/index.tsx index 2204152f..5d97d4d0 100644 --- a/src/features/MultiSourcePlayer/hooks/index.tsx +++ b/src/features/MultiSourcePlayer/hooks/index.tsx @@ -148,7 +148,7 @@ export const useMultiSourcePlayer = ({ isFullscreen, onFullscreenClick, wrapperRef, - } = useFullscreen() + } = useFullscreen(videoRef) const getChapterUrl = useCallback((index: number, quality: string = selectedQuality) => ( getActiveChapter(index)?.urls[quality] diff --git a/src/features/StreamPlayer/hooks/index.tsx b/src/features/StreamPlayer/hooks/index.tsx index e8e4cc83..aea6db50 100644 --- a/src/features/StreamPlayer/hooks/index.tsx +++ b/src/features/StreamPlayer/hooks/index.tsx @@ -112,7 +112,7 @@ export const useVideoPlayer = ({ isFullscreen, onFullscreenClick, wrapperRef, - } = useFullscreen() + } = useFullscreen(videoRef) const [sizeOptions, setSizeOptions] = useState({ height: wrapperRef.current?.clientHeight, diff --git a/src/features/StreamPlayer/hooks/useFullscreen.tsx b/src/features/StreamPlayer/hooks/useFullscreen.tsx index 2a73e4f1..90689019 100644 --- a/src/features/StreamPlayer/hooks/useFullscreen.tsx +++ b/src/features/StreamPlayer/hooks/useFullscreen.tsx @@ -16,7 +16,7 @@ const supportsFullscreen = (video: HTMLVideoElement | null): video is IOSVideo = && 'webkitExitFullscreen' in video, ) -export const useFullscreen = () => { +export const useFullscreen = (activePlayer: React.RefObject) => { const wrapperRef = useRef(null) const { isOpen: isFullscreen, @@ -43,12 +43,8 @@ export const useFullscreen = () => { } } - const getPlayingVideoElement = () => ( - wrapperRef.current?.querySelector('video') as HTMLVideoElement | null - ) - const toggleIOSFullscreen = () => { - const video = getPlayingVideoElement() + const video = activePlayer?.current if (!video || !supportsFullscreen(video)) return if (isFullscreen) {