fix: avoid actively closing PiP mode

This commit is contained in:
codytseng
2025-04-13 10:59:54 +08:00
parent f7087517e4
commit 92fe2524e5

View File

@@ -25,24 +25,11 @@ export default function VideoPlayer({
const observer = new IntersectionObserver( const observer = new IntersectionObserver(
async ([entry]) => { async ([entry]) => {
const isVisible = entry.isIntersecting if (!entry.isIntersecting && !video.paused) {
if (!isVisible && !video.paused) {
await videoManager.enterPiP(video) await videoManager.enterPiP(video)
} }
if (isVisible) {
if (
document.pictureInPictureElement === video ||
(video as any).webkitPresentationMode === 'picture-in-picture'
) {
await videoManager.exitPiP(video)
}
}
}, },
{ { threshold: 0.5 }
threshold: 0.5
}
) )
observer.observe(container) observer.observe(container)