LGTM3

Super excited about this work and solving those critical use cases (for
both SPA and MPA). Thanks for tackling this!!

On Tue, Jan 24, 2023, 11:06 Mike West <mk...@chromium.org> wrote:

> LGTM2.
>
> That said, I'd note Mozilla's desire in the standards position thread to
> couple this with the multi-page transition work. I agree with your position
> that the two can be decoupled, and I don't see anything that screams
> back-compat risk skimming through the followup issues that the TAG created.
> I likewise don't see anything that jumps out at me as locking us into any
> particular design for a declarative version of this mechanism as our
> friends in the TAG have pointed towards.
>
> Shipping this as an iterative step sounds like it satisfies some developer
> interest, and give us valuable implementation experience that can inform
> further development. Good luck landing it!
>
> -mike
>
>
> On Mon, Jan 23, 2023 at 10:19 PM Mike Taylor <miketa...@chromium.org>
> wrote:
>
>> LGTM1
>>
>> On 1/23/23 2:26 PM, Khushal Sagar wrote:
>>
>>
>>
>> On Mon, Jan 23, 2023 at 1:55 PM Mike Taylor <miketa...@chromium.org>
>> wrote:
>>
>>> 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
>>>
>>> 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
>>>
>>> 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?
>>>
>>
>> Yes, most follow-up issues filed based on TAG feedback are about
>> transitions initiated from navigations. This is part of the MPA work which
>> we plan to ship as a follow up and it can be shipped independently of the
>> same-document transitions covered by this intent.
>>
>> The only issue on that review which concerns same-document transitions is
>> #8319 <https://github.com/w3c/csswg-drafts/issues/8319>, a syntax which
>> would allow selecting a subset of generated pseudo-elements. This syntax
>> addition can be made in a backwards-compatible way.
>>
>> Thanks, SGTM.
>>
>>
>>> 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)
>>>
>>> WebKit: No signal (
>>> 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
>>>    -
>>>
>>>    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
>>>    -
>>>
>>>    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
>>>
>>> The following issues track review from security/privacy WGs:
>>> https://github.com/w3c/security-request/issues/43 and
>>> 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
>>>
>>> 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
>>>
>>> Sample links
>>>
>>> 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.
>>> 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
>>>
>>> Links to previous Intent discussions
>>>
>>> Intent to prototype:
>>> 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
>>>
>>>
>>> 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/de3e2580-8a8c-b15f-5a92-70e21f3999b2%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/de3e2580-8a8c-b15f-5a92-70e21f3999b2%40chromium.org?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/CAKXHy%3DcSv8q7GyT4hRHUfH%3DJvFLSQNVJD3PFcTXc%3D_QEP8VBZA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKXHy%3DcSv8q7GyT4hRHUfH%3DJvFLSQNVJD3PFcTXc%3D_QEP8VBZA%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/CAL5BFfVPoRLS_Sqo45hzDM%2BRupOQi-R6YLxH%2B1Wp5XpFZs7G2Q%40mail.gmail.com.

Reply via email to