GithubHelp home page GithubHelp logo

Comments (9)

dweinber avatar dweinber commented on August 16, 2024 1

Hi @karlcow,

As you noticed, this isn't really a UI but a player issue, hence I'm closing this ticket in the UI repository.

Having said that, this is a known issue caused by a Safari bug behavior change around the events of the underlying fullscreen API. We have already implemented a mitigation for this problem in our player, which will be part of the upcoming release next Tuesday (8.119.0).

from bitmovin-player-ui.

karlcow avatar karlcow commented on August 16, 2024

Thanks a lot @dweinber
Do you know which Safari bug? on bugs.webkit.org?

from bitmovin-player-ui.

dweinber avatar dweinber commented on August 16, 2024

Sorry, I got that slightly wrong. It's not a bug in Safari but a behavior change in the fullscreen-related events. I think from Safari it's expected behavior but this change messed with our state handling.

from bitmovin-player-ui.

karlcow avatar karlcow commented on August 16, 2024

Thanks. This is
https://bugs.webkit.org/show_bug.cgi?id=84798
and https://bugs.webkit.org/show_bug.cgi?id=229333

from bitmovin-player-ui.

dweinber avatar dweinber commented on August 16, 2024

Sounds like https://bugs.webkit.org/show_bug.cgi?id=229333 indeed, yes

from bitmovin-player-ui.

nt1m avatar nt1m commented on August 16, 2024

@dweinber Hi! Can I get more precision into why it messed up the state handling? Knowing what the fix you applied would be helpful too. I'm wondering if there are any more cases that started breaking with the new fullscreen API or if it's just isolated.

from bitmovin-player-ui.

dweinber avatar dweinber commented on August 16, 2024

Hi @nt1m,

Essentially our player was listening to prefixed and unprefixed fullscreen change events to support the different browsers and implementation. So far, browsers had one or the other but starting with Safari 16.4, Safari emits both, fullscreenchange and webkitfullscreenchange events.

This caused the player to think it has left fullscreen mode already, even though it was still playing fullscreen. Hence, the button to de-toggle fullscreen didn't work.

With the player version 8.119.0 and above, we now remember which event type has triggered the fullscreen mode, leading to interleaving events (like webkitfullscreenchange) not having an effect on the state in the player.

from bitmovin-player-ui.

nt1m avatar nt1m commented on August 16, 2024

Thanks! that helped us provide a fix on our side as well: WebKit/WebKit#14599

from bitmovin-player-ui.

dweinber avatar dweinber commented on August 16, 2024

Nice, thanks for letting us know and for implementing the fix! 👍

from bitmovin-player-ui.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.