Would you mind requesting reviews for the various gates (privacy, security, debuggability) for an OT/DT in your chromestatus entry?

On 1/19/24 10:43 PM, Thomas Guilbert wrote:


        Contact emails

tguilb...@chromium.org


        Explainer

None


        Specification

https://fullscreen.spec.whatwg.org/#dom-document-fullscreenenabled


        Summary

There was an attempt in 2014 <https://groups.google.com/a/chromium.org/g/blink-dev/c/Bxe7DnDVRZ0/m/5K61HQPrNK4J> to deprecate and remove the HTMLVideoElement-specific Prefixed Fullscreen APIs. This meant removing the following APIs from HTMLVideoElement:

    readonly attribute boolean webkitSupportsFullscreen;
    readonly attribute boolean webkitDisplayingFullscreen;
    void webkitEnterFullscreen();
    void webkitExitFullscreen();
    // Note the different capitalization of the "S" in FullScreen.
    void webkitEnterFullScreen();
    void webkitExitFullScreen();

The overall usage of these APIs is low, and has trended downwards over time. Here are the latest usage numbers, as a % of total page loads:

    PrefixedVideoSupportsFullscreen: 0.025%
    PrefixedVideoDisplayingFullscreen: 0.082%
    PrefixedVideoEnterFullscreen: 0.001%
    PrefixedVideoExitFullscreen: 0.010%
    PrefixedVideoEnterFullScreen: 0.001%
    PrefixedVideoExitFullScreen: 0.000%


There has been an unfortunate uptick in the past 2 years for the two following APIs, which means that it's best to remove them now, before they see a wider adoption. These numbers might be going up because the prefixed APIs are also present on iOS.

https://chromestatus.com/metrics/feature/timeline/popularity/166
https://chromestatus.com/metrics/feature/timeline/popularity/167

There is an alternative set of APIs supported by all browsers that web authors can use.

The full history of the removal attempt is here: crbug.com/ <http://crbug.com/>346236


        Goals for experimentation

The primary goal of the deprecation trial is to reduce the amount of broken user-visible experiences as the prefixed fullscreen APIs are removed, and to give time to web authors to transition to the modern API (which has been available for 5 years).


The un-prefixed fullscreen APIs have been available since Chrome M71.


        Experiment timeline

TBD, with a proposed 3 months duration


        Blink component

Blink>Fullscreen
Blink>Media>Video



        TAG review

None


        TAG review status

Not applicable


        Risks


        Interoperability and Compatibility

    Web Compatibility:

        Removing non-standard APIs should overall help web
        compatibility, and encourage web authors to use the unprefixed
        APIs. Some experiences might be broken by this change, thus
        justifying this deprecation trial. The API has been deprecated
        for a significant amount of time however, and usage has gone down.

        This would only be an issue for websites that *only* support
        the prefixed APIs.


    Interoperability:


All browsers have shipped the new APIs, most of them using an unprefixed version (Safari on iOS being the only remaining prefixed-only API). See also https://developer.mozilla.org/en-US/docs/Web/API/Element/requestFullscreen#browser_compatibility


Gecko:


WebKit:


Web developers:


Other signals:


        Activation

    Impact on the Ads ecosystem:

N/A



        WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

Potentially. The deprecation trial should give a heads up and appropriate time for apps to switch over to the unprefixed APIs.




        Ongoing technical constraints

None



        Debuggability

N/A


        Will this feature be supported on all six Blink platforms
        (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes - the prefixed API will be removed across all platforms.


        Is this feature fully tested by web-platform-tests
        
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?

Yes

WPTs testing the prefixes are removed: https://github.com/web-platform-tests/wpt/blob/master/fullscreen/api/historical.html

WPTs testing the new API: https://github.com/web-platform-tests/wpt/tree/master/fullscreen/api



        Flag name on chrome://flags

None


        Finch feature name

PrefixedVideoFullscreen


        Non-finch justification

None


        Requires code in //chrome?

False


        Launch bug

None


        Estimated milestones

DevTrial on desktop

        

123


DevTrial on Android

        

123



        Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5259513871466496

--
You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABrVPoa373%3Dnxuc%2BTe_h9e0WdS53_oAyUEa%2B4j0v2xWgJ2MFcw%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABrVPoa373%3Dnxuc%2BTe_h9e0WdS53_oAyUEa%2B4j0v2xWgJ2MFcw%40mail.gmail.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8a71f31c-afc2-46e8-8087-3192456a059e%40chromium.org.

Reply via email to