Hi Khushal,

On 1/19/23 3:12 PM, Khushal Sagar wrote:

Contact emails

bo...@chromium.org, hvanops...@chromium.org, jakearchib...@chromium.org, khushalsa...@chromium.org, vmp...@chromium.org


        Explainer

https://github.com/WICG/view-transitions/blob/main/explainer.md <https://github.com/WICG/shared-element-transitions/blob/main/explainer.md>


        Specification

https://www.w3.org/TR/css-view-transitions-1 <https://www.w3.org/TR/css-view-transitions-1>


        Summary

View Transitions <https://developer.chrome.com/docs/web-platform/view-transitions/>is an API that enables the creation of polished transitions. Web developers only need minimal effort to make transitions look nice. They can choose to use some default animation properties, or they can customize their own transition effects to achieve a desired transition experience.


This is accomplished by leveraging user-agents’ ability to persist visual representations of rendered output (i.e. snapshots) and blend them with the live DOM state’s rendered output. The API also allows these animations to be customized via standard CSS animation properties.

Note that while this intent is limited to shipping an API for same-document transitions (i.e. by using document.startViewTransition, as outlined in the spec), there is ongoing work to provide this feature for same-origin, cross-document navigations (MPA). MPA support will be added as a follow up via a separate intent to ship.


        Blink component

Blink>ViewTransitions <https://bugs.chromium.org/p/chromium/issues/list?q=component%3ABlink%3EViewTransitions&can=2>


        TAG review

https://github.com/w3ctag/design-reviews/issues/748 <https://github.com/w3ctag/design-reviews/issues/748>

Can you confirm that all the follow-up issues <https://github.com/w3ctag/design-reviews/issues/748#issuecomment-1379517669> filed in response to feedback in this review are backwards-compatible with what you propose to ship now?


        TAG review status

Pending


        Risks


        Interoperability and Compatibility

Low. As a new feature, the primary risk is that other browsers do not implement it. But since this is a progressive enhancement, sites should be able to feature-detect and drop usage of the feature easily in browsers where it is not supported without breaking any site functionality.


This feature can be feature-detected by checking the existence of the document.startViewTransition function:

```js

if (!document.startViewTransition) {

  /* feature is not available */

} else {

  /* start transition */

}

```

Gecko: Under consideration (https://github.com/mozilla/standards-positions/issues/677 <https://github.com/mozilla/standards-positions/issues/677>)


WebKit: No signal (https://github.com/WebKit/standards-positions/issues/48 <https://github.com/WebKit/standards-positions/issues/48>)


Web developers: Strongly positive interest in and developer experimentation with the API:

 *

    Updated developer.chrome article (Twitter)
    <https://twitter.com/jaffathecake/status/1554460598980812809>

 *

    News about the new SET API (Twitter)
    <https://twitter.com/jaffathecake/status/1524782819431555074>

 *

    Dev-built demo using SET (Twitter)
    <https://twitter.com/jh3yy/status/1550675304280035328>

 *

    I/O Session (Youtube <https://www.youtube.com/watch?v=JCJUPJ_zDQ4>)

 *

    Dev-built demo using SET (Reddit)
    
<https://www.reddit.com/r/webdev/comments/uyoit1/i_played_around_with_chromes_new_shared_element/>

 *

    Dev-built demo using SET (Twitter)
    
<https://twitter.com/OliverJAsh/status/1530261401016705026?t=CXqW2yiIMbH6bLfn8ImINw&s=19>

 *

    Dev-built demo using SET (Twitter)
    <https://twitter.com/charca/status/1561830946462384128>

 *

    Dev-built demo using SET (Twitter)
    <https://twitter.com/AdrianBeceDev/status/1567177956199485450>

 *

    Dev-built demo using SET (Twitter)
    <https://twitter.com/charca/status/1570835238359830529>

 *

    https://twitter.com/dannymoerkerke/status/1597187172783693824
    <https://twitter.com/dannymoerkerke/status/1597187172783693824>

 *

    The Shared Element Transition API is Flipping Cool | Chris Coyier
    
<https://chriscoyier.net/2022/10/21/the-shared-element-transition-api-is-fliping-cool/>

 *

    Every Transition is a Page Transition? | OddBird
    <https://www.oddbird.net/2022/06/29/shared-elements/>

 *

    https://twitter.com/derSchepp/status/1590709783807791104
    <https://twitter.com/derSchepp/status/1590709783807791104>

 *

    Astro stands to benefit highly from View Transitions | Chris
    Coyier
    
<https://chriscoyier.net/2022/11/08/astro-stands-to-benefit-highly-from-view-transitions/>

 *

    Shared Element Transitions API Part 1 | Smashing Magazine
    
<https://www.smashingmagazine.com/2022/10/ui-animations-shared-element-transitions-api-part1/>


        Ergonomics

None.


        Activation

   Low.


As with interop/compat risks, the difficulty stems from this being a new feature without support in other browsers. A polyfill for the SPA case would be beneficial. That said, this feature is a progressive enhancement for sites; they can easily use the API and  still function correctly on browsers that do not support the feature.


        Security

The primary security constraint is ensuring isolation of graphics resources from multiple origins. The design achieves that by using Chromium's Viz process, similar to site isolation for iframes.


See also the security and privacy self-review questionnaire that was completed as part of the TAG review process:https://github.com/WICG/view-transitions/blob/main/security-privacy-questionnaire.md <https://github.com/WICG/view-transitions/blob/main/security-privacy-questionnaire.md>


The following issues track review from security/privacy WGs:https://github.com/w3c/security-request/issues/43 <https://github.com/w3c/security-request/issues/43>andhttps://github.com/w3cping/privacy-request/issues/107 <https://github.com/w3cping/privacy-request/issues/107>.



        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?

None. This feature is fully available and functional for WebView.


        Debuggability

The feature can be debugged using standard tooling in devtools. Specifically, the animations drawer tab <https://developer.chrome.com/docs/devtools/css/animations/>can be used to pause and scrub through all animations on generated pseudo-elements.


The pseudo DOM structure generated by the user agent can also be inspected and targeted, like other DOM elements, in the style panel.


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

Yes


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

Yes


        DevTrial instructions

https://developer.chrome.com/docs/web-platform/view-transitions <https://developer.chrome.com/docs/web-platform/view-transitions>


        Flag name

ViewTransition


        Requires code in //chrome?

False


        Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1405452


        Measurement

Usage is tracked via a UseCounter: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/view_transition/view_transition_supplement.idl;l=9;drc=501455e6942313c87a276e8fde93e507786cc51c <https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/view_transition/view_transition_supplement.idl;l=9;drc=501455e6942313c87a276e8fde93e507786cc51c>


        Sample links

https://developer.chrome.com/docs/web-platform/view-transitions <https://developer.chrome.com/docs/web-platform/view-transitions>


        Previous milestones

OriginTrial desktop last

        

106

OriginTrial desktop first

        

104

DevTrial on desktop

        

104


OriginTrial Android last

        

106

OriginTrial Android first

        

104

DevTrial on Android

        

104



        Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

The following open issues are awaiting resolution in CSSWG: https://github.com/w3c/csswg-drafts/issues?q=is%3Aopen+css-view-transitions+label%3Acss-view-transitions-1+label%3AAgenda%2B <https://github.com/w3c/csswg-drafts/issues?q=is%3Aopen+css-view-transitions+label%3Acss-view-transitions-1+label%3AAgenda%2B>. We anticipate that any change from a resolution on these issues has minimal to no compat risk.


        Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5193009714954240 <https://chromestatus.com/feature/5193009714954240>


        Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/7SMI3IklO4g/m/JS-JojxNAwAJ <https://groups.google.com/a/chromium.org/g/blink-dev/c/7SMI3IklO4g/m/JS-JojxNAwAJ>

Intent to Experiment: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUyUH0939fLa7xH_EuRtgn0MWBzG8qzLMmH0zJ9GBBTh-A%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUyUH0939fLa7xH_EuRtgn0MWBzG8qzLMmH0zJ9GBBTh-A%40mail.gmail.com>



This intent message was generated by Chrome Platform Status <https://chromestatus.com/>.


--
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/CAMLuWUxa3FH0pseWhQWg3w0ESfHMhjK3KLyat8G4sQzZ0tmzOA%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAMLuWUxa3FH0pseWhQWg3w0ESfHMhjK3KLyat8G4sQzZ0tmzOA%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/bb3d35b9-21eb-702b-a538-74cfc67ecbde%40chromium.org.

Reply via email to