fix: avoid actively closing PiP mode
This commit is contained in:
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user