En Safari (15.3) en Macos (11.6.4), y posiblemente también en iOS, habilitar y deshabilitar la pantalla completa desencadena un evento de "cambio de visibilidad". No lo hace en Chrome y Firefox.
¿Hay una forma sencilla de solucionarlo (para no activar el cambio de visibilidad en un safari)?
Una solución sería deshabilitar y habilitar el oyente de cambio de visibilidad al cambiar a pantalla completa, pero es bastante complicado.
Algunos fragmentos para reproducir:
document.addEventListener('visibilitychange', () => {console.log('visibilitychange')}, false); document.addEventListener('webkitvisibilitychange', () => {console.log('webkitvisibilitychange')}, false); var elem = document.getElementById("myvideo"); function openFullscreen() { if (elem.requestFullscreen) { elem.requestFullscreen(); } else if (elem.webkitRequestFullscreen) { /* Safari */ elem.webkitRequestFullscreen(); } else if (elem.msRequestFullscreen) { /* IE11 */ elem.msRequestFullscreen(); } }