forces isImmersive()