LGTM3

/Daniel

On 2023-04-12 10:57, Yoav Weiss wrote:
Thanks for verifying this and for filing Firefox issues.

LGTM2

On Tue, Apr 11, 2023 at 10:46 PM David Awogbemila <awogbem...@chromium.org> wrote:



    On Fri, Apr 7, 2023 at 4:49 AM Yoav Weiss <yoavwe...@chromium.org>
    wrote:



        On Thu, Apr 6, 2023 at 2:39 AM David Awogbemila
        <awogbem...@chromium.org> wrote:



            On Wed, Apr 5, 2023 at 12:11 AM Yoav Weiss
            <yoavwe...@chromium.org> wrote:



                On Fri, Mar 31, 2023 at 3:50 PM David Awogbemila
                <awogbem...@chromium.org> wrote:


                            Contact emails


                            arg...@google.com, awogbem...@google.com


                            Explainer


                            
https://github.com/argyleink/scrollend-explainer/blob/main/README.md


                The explainer says this shipped in 114. I guess it
                should say y'all are expecting to ship at that point :)




                            Specification


                            
https://drafts.csswg.org/cssom-view/#scrolling-events


                            Summary


                            Scrollend events help developers reliably
                            tell when a scroll has completed
                            (including both the scroll itself and any
                            updates to offsets from the scroll).
                            Knowing when a scroll has completed is
                            useful for various reasons, e.g.
                            synchronizing some logic on the snapped
                            section, fetching stuff in a list,
                            triggering new animations, etc. This
                            feature greatly simplifies the logic for
                            handling end-of-scroll effects, ensuring
                            that they are consistent across many
                            different input modalities. Currently,
                            developers address this need by observing
                            scroll events and building ad-hoc timeout
                            algorithms.



                            Blink component


                            Blink>Scroll
                            
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EScroll>


                            Search tags


                            scroll
                            <https://chromestatus.com/features#tags:scroll>


                            TAG review




                            TAG review status


                            Not applicable


                Agree this is not needed, as this is following WG
                agreed-upon behavior, that has already shipped in one
                implementation.




                            Risks




                            Interoperability and Compatibility




                            /Gecko/: Shipped/Shipping
                            
(https://bugzilla.mozilla.org/show_bug.cgi?id=1797013)

                            /WebKit/: No signal
                            
(https://github.com/WebKit/standards-positions/issues/150)
                            There hasn't been an explicit position
                            attached to the position request yet but
                            there is a tracking WebKit issue:
                            https://bugs.webkit.org/show_bug.cgi?id=201556

                            /Web developers/: Positive
                            
(https://twitter.com/nghuuphuoc/status/1618806085158051846?s=20)
                            Other examples:
                            
https://twitter.com/radogado/status/1621479592123826184?s=20
                            
https://twitter.com/ebidel/status/1621037204297637891?lang=en

                            /Other signals/:


                            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?

                            Not potentially high risk.



                            Debuggability


                            We verified via Protocol Monitor that
                            DevTools supports breaking on scrollend
                            listeners, similar to other events.
                            DevTools UI change is needed to make this
                            accessible which will be done via
                            crrev.com/c/4376080
                            <https://crrev.com/c/4376080>.



                            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


                
https://wpt.fyi/results/dom/events/scrolling?label=master&label=experimental&aligned
                
<https://wpt.fyi/results/dom/events/scrolling?label=master&label=experimental&aligned>
                paints an odd picture, where our current experimental
                implementation passes some of the tests, but not
                others, and Firefox seems to be failing some of them.
                Can you elaborate on the end state you're expecting
                once this ships?

            We should have filtered that wpt.fyi link to scrollend
            tests:
            
https://wpt.fyi/results/dom/events/scrolling?label=master&label=experimental&aligned&q=scrollend
            
<https://wpt.fyi/results/dom/events/scrolling?label=master&label=experimental&aligned&q=scrollend>
            We expect the scrollend tests to pass on all the browsers
            except Safari which doesn't support scrollend yet I believe.
            I've looked more closely into the failures and filed
            crbug.com/1430947 <http://crbug.com/1430947> explaining
            the reasons they are failing should have them all fixed
            soon. They are mostly issues with the way the tests are
            written.


        Do you have a sense of the Firefox failures? Are they all in
        newer tests that were added after they implemented the feature?
        I'm slightly concerned we'd ship this with interoperability
        issues.

    I was able to reproduce the firefox failures locally and I
    observed 2 main issues:
    i) In some tests Firefox just isn't scrolling or isn't firing
    scrollend when we expect it to, even though when I manually
    interacting with the firefox browser in the same scenarios it does
    scroll and does fire scrollend as expected. These seem to have to
    do with the test environment/setup. This affects old tests where
    it's not yet clear why the outcome is different in tests than via
    manual interaction.
    There is an existing mozilla bug for some of these tests:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1655754. I will
    update the relevant bugs to see if firefox folks can take a look.
    There are also newer bugs for more recent tests:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1814530,
    https://bugzilla.mozilla.org/show_bug.cgi?id=1826912. I will
    comment on these bugs as well.

    ii) Firefox sometimes (i.e. when scrolling via keyboard) fires
    scrollend when there is no scroll - in this case, there shouldn't
    be a scrollend event, per the second note in the spec
    (https://drafts.csswg.org/cssom-view/#scrolling). With wheel
    scrolls, firefox (correctly) does not fire scrollend if there is
    no scroll. I will file a mozilla bug for this issue and update
    here when I've done so.




                            Flag name


                            N/A


                            base::Feature is autogenerated from
                            runtime_enabled_features.json5
                            
<https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/platform/runtime_enabled_features.json5;l=2920?q=%22name:%20%22ScrollEndEvents%22%22&sq=&ss=chromium%2Fchromium%2Fsrc>


                            Requires code in //chrome?


                            False


                            Tracking bug


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


                            Estimated milestones

                    M114



                            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).



                            Link to entry on the Chrome Platform Status


                            https://chromestatus.com/feature/5186382643855360

                            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/CAA6pwF7nGNT0bwM8VY3Jj0TAEe9jNptKuwrMN1%3DO8tnqH2t8JQ%40mail.gmail.com
                    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAA6pwF7nGNT0bwM8VY3Jj0TAEe9jNptKuwrMN1%3DO8tnqH2t8JQ%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/CAL5BFfV6V7eLcqcgSZfiNP%3Dm8gA5YKKGDfJKLiz5Y%2B8iFEDggQ%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfV6V7eLcqcgSZfiNP%3Dm8gA5YKKGDfJKLiz5Y%2B8iFEDggQ%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/06f9f250-b1e4-895e-c609-22fa880e26c3%40gmail.com.

Reply via email to