fix(#2856): fixed active player on fullscreen

keep-around/2fd168b18eeebc91eac94ae86d817c12edfe1576
Rakov Roman 3 years ago
parent 486ce4b4f6
commit 38fb947747
  1. 2
      src/features/MultiSourcePlayer/hooks/index.tsx
  2. 2
      src/features/StreamPlayer/hooks/index.tsx
  3. 8
      src/features/StreamPlayer/hooks/useFullscreen.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]

@ -112,7 +112,7 @@ export const useVideoPlayer = ({
isFullscreen,
onFullscreenClick,
wrapperRef,
} = useFullscreen()
} = useFullscreen(videoRef)
const [sizeOptions, setSizeOptions] = useState({
height: wrapperRef.current?.clientHeight,

@ -16,7 +16,7 @@ const supportsFullscreen = (video: HTMLVideoElement | null): video is IOSVideo =
&& 'webkitExitFullscreen' in video,
)
export const useFullscreen = () => {
export const useFullscreen = (activePlayer: React.RefObject<HTMLVideoElement>) => {
const wrapperRef = useRef<HTMLDivElement>(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) {

Loading…
Cancel
Save