LGTM3

/Daniel

On 2025-03-26 16:24, Chris Harrelson wrote:
LGTM2

On Wed, Mar 26, 2025 at 8:22 AM Yoav Weiss (@Shopify) <yoavwe...@chromium.org> wrote:

    LGTM1

    On Wednesday, March 26, 2025 at 10:55:35 AM UTC-4
    vinay...@microsoft.com wrote:

        Yes, createSVGPoint() will still work.
        We have a WPT as well to ensure it.
        
https://wpt.fyi/results/svg/types/scripted/SVGGeometryElement.isPointInStroke-02.svg

        Thanks,
        Vinay
        ------------------------------------------------------------------------
        *From:* TAMURA, Kent <tk...@chromium.org>
        *Sent:* Wednesday, March 26, 2025 05:20 AM
        *To:* Vinay Singh <vinaysi...@microsoft.com>;
        blink-dev@chromium.org <blink-dev@chromium.org>
        *Cc:* Chromestatus <ad...@cr-status.appspotmail.com>
        *Subject:* [EXTERNAL] Re: [blink-dev] Intent to Ship: Use
        DOMPointInit for getCharNumAtPosition, isPointInFill,
        isPointInStroke

                
        You don't often get email from tk...@chromium.org. Learn why
        this is important <https://aka.ms/LearnAboutSenderIdentification>
                



        On Wed, Mar 26, 2025 at 2:59 AM Chromestatus
        <ad...@cr-status.appspotmail.com> wrote:


                    Contact emails

            vinaysi...@microsoft.com


                    Explainer

            None


                    Specification

            https://svgwg.org/svg2-draft


                    Summary

            This change brings Chromium code in line with the latest
            W3C spec for SVGGeometryElement and SVGPathElement in
            terms of usage of DOMPointInit over SVGPoint for
            getCharNumAtPosition, isPointInFill, isPointInStroke. The
            change has already landed:
            https://chromium-review.googlesource.com/c/chromium/src/+/6284886
            Firefox and Safari already have this live making this a
            fairly safe change to land. Details for both added under
            Signals for both.



                    Blink component

            Blink>SVG
            
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ESVG%22>



                    TAG review

            None


                    TAG review status

            Not applicable


                    Risks



                    Interoperability and Compatibility

            This is already implemented in Firefox and Safari with no
            reported open issues. Moreover, DOMPointInit is a superset
            of SVGPoint, but the extra params do have default values
            to support backward compatibility. We have however
            introduced some checks on Nan/Infinite values but those
            are exclusively to handle invalid requests to these APIs,
            say trying to access points at (Infinity, Nan) - (x,y)
            coordinate. And even then, we simply return back with a
            default value instead of throwing back an exception.


        Will code using createSVGPoint() still work after the change?



            /Gecko/: Shipped/Shipping
            
(https://developer.mozilla.org/en-US/docs/Web/API/SVGGeometryElement/isPointInFill)
            Firefox uses DOMPointInit already in the corresponding
            API:
            
https://developer.mozilla.org/en-US/docs/Web/API/SVGGeometryElement/isPointInFill
            Also, WPT has been passing for Firefox indicating that
            they have implemented this already:
            
https://wpt.fyi/results/svg/types/scripted/SVGGeometryElement.isPointInFill-01.svg


            /WebKit/: Shipped/Shipping
            
(https://github.com/WebKit/WebKit/commit/7589919c57641e1e3dac86872171d4d681e3f2d0)
            Webkit (Safari) already uses DOMPointInit in these APIs.
            Here is the commit link for one of the APIs:
            
https://github.com/WebKit/WebKit/commit/7589919c57641e1e3dac86872171d4d681e3f2d0
            Also, WPT has been passing for Safari indicating that they
            have implemented this already:
            
https://wpt.fyi/results/svg/types/scripted/SVGGeometryElement.isPointInFill-01.svg


            /Web developers/: No signals

            /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?

            None



                    Debuggability

            The SVGTextContentElement interface in JavaScript is
            implemented by elements that support rendering child text
            content. This interface is inherited by various
            text-related interfaces, such as SVGTextElement,
            SVGTSpanElement, SVGTRefElement, and SVGTextPathElement.
            Any of the above elements can be used to access and test
            APIs in SVGTextContentElement interface. For
            SVGGeometryElement, it is implemented by Geometry elements
            like SVGRectElement and SVGCircleElement. Objects of these
            classes can be used to access and test APIs in
            SVGGeometryElement interface.



                    Will this feature be supported on all six Blink
                    platforms (Windows, Mac, Linux, ChromeOS, 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/svg/types/scripted/SVGAnimatedEnumeration-SVGTextContentElement.html
            *
            
https://wpt.fyi/results/svg/types/scripted/SVGGeometryElement.isPointInFill-01.svg



                    Flag name on about://flags

            None


                    Finch feature name

            None


                    Non-finch justification

            This is a simple spec catch up in Chromium which is
            already implemented in Firefox and Safari. Also, this
            change cannot be put behind a feature flag since it is a
            change in method/API signature. However, Firefox and
            Safari already have this live making this a fairly safe
            change to land. Details for both added under Signals for both.



                    Requires code in //chrome?

            False


                    Tracking bug

            https://issues.chromium.org/issues/40572887


                    Estimated milestones

            Shipping on desktop         136
            Shipping on Android         136
            Shipping on iOS     136



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

            None


                    Link to entry on the Chrome Platform Status

            
https://chromestatus.com/feature/5203869052960768?gate=5197116357738496


            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 visit
            
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/67e2ef0b.170a0220.2e951e.01ad.GAE%40google.com
            
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/67e2ef0b.170a0220.2e951e.01ad.GAE%40google.com?utm_medium=email&utm_source=footer>.



-- TAMURA Kent
        Software Engineer, Google


-- 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 visit
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/f79155ea-f89d-4347-ac5b-801f3e5ea310n%40chromium.org
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/f79155ea-f89d-4347-ac5b-801f3e5ea310n%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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-ponUYGt%2BQ4DG3WH2T%3D89_cDQN8NYXKsKYEjT6X3BQZw%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-ponUYGt%2BQ4DG3WH2T%3D89_cDQN8NYXKsKYEjT6X3BQZw%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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/a18604aa-1e23-459c-810e-db0647a4ada7%40gmail.com.

Reply via email to