LGTM3, assuming we have useful tests.

On 10/6/22 1:00 AM, Yoav Weiss wrote:
LGTM2

On Wed, Oct 5, 2022 at 5:48 PM Philip Jägenstedt <foo...@chromium.org> wrote:

    LGTM1 with some strings attached.

    We discussed this in the API owners meeting (present: Chris, Yoav,
    Mike, Daniel, me)

    Since this matches other implementations and is somewhat
    deliberate unspec'd, shipping this sounds good. Very nice to see
    highly starred interop issues being fixed :)

    Great that tests will be added, presumably those will be tentative
    
<https://web-platform-tests.org/writing-tests/file-names.html?highlight=tentative>
    due to a lack of a spec.

    Traian, Philip, since this will be interoperable, can you propose
    a spec change that would define it? Or if that runs into some
    roadblock, can you loop back to this thread? (This does not block
    shipping.)

    On Thu, Sep 29, 2022 at 11:55 PM 'Philip Rogers' via blink-dev
    <blink-dev@chromium.org> wrote:



        On Thursday, September 29, 2022 at 12:17:10 PM UTC-7 Chris
        Harrelson wrote:

            On Thu, Sep 29, 2022 at 12:15 PM Mike Taylor
            <mike...@chromium.org> wrote:

                On 9/28/22 3:01 PM, Traian Captan wrote:

                Contact emails

                tca...@chromium.org


                Explainer

                Though not a formal explainer, Emilio has an
                excellent writeup of this issue at
                https://crisal.io/words/2020/06/13/rounding-borders.html
                <https://crisal.io/words/2020/06/13/rounding-borders.html>.


                Spec

                With this change to blink, all implementations will
                agree, and this can be specified (see:
                https://github.com/w3c/csswg-drafts/issues/5210
                <https://github.com/w3c/csswg-drafts/issues/5210>).

                Is there any current blocker to specifying this
                (besides someone doing the work)?


             Currently, the specs intentionally avoid specifying
            pixel-snapping behavior, and instead leave it up to
            engines to decide how they want to do it. Changing that
            would be a significant effort.


        Once this change lands, won't it be straightforward to specify
        this specific aspect of snapping? This change is visible in
        the computed style.


                Summary

                Snap border, outline and column-rule widths before
                layout to avoid gaps between backgrounds and borders
                caused by paint-time snapping. With this change,
                Blink will match Gecko and WebKit.


                        Blink component

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



                        Motivation

                Currently Blink snaps the border widths at paint
                time. This can cause a visible 1px gap between a
                parent element's border and a child's background when
                the border is rounded down during paint since the
                snapping floors the value but the layout rounded it
                up to calculate the child’s s position (eg
                border-width is set to 10.75 pixels, rounded to 10px
                at paint time, but 11 at layout time). By making this
                change Blink will also behave like Gecko and WebKit
                and increase interoperability.


                        Search tags

                border-width
                <https://chromestatus.com/features#tags:border-width>,
                outline-width
                <https://chromestatus.com/features#tags:outline-width>,
                column-rule-width
                <https://chromestatus.com/features#tags:column-rule-width>


                        TAG review

                Skipping because this is a straightforward interop fix.


                        TAG review status

                N/A


                        Risks


                        Interoperability and Compatibility

                Gecko and WebKit already snap borders before layout.

                This change would make Blink behave the same and
                increase interoperability and compatibility.

                The explainer section has a link to a blog post
                describing the differences in more detail.

                This issue and the proposed fix have been discussed
                in: Issue 1201762: [Task] Investigate border snapping
                before layout <https://crbug.com/1201762>, which is
                currently blocking 10 issues.

                This issue was also discussed on:

                https://github.com/w3c/csswg-drafts/issues/2114
                <https://github.com/w3c/csswg-drafts/issues/2114>

                https://github.com/w3c/csswg-drafts/issues/5210
                <https://github.com/w3c/csswg-drafts/issues/5210>




                Gecko: Shipped/Shipping


                WebKit: Shipped/Shipping


                Web developers: Strongly positive - This has been
                reported in at least 10 separate bugs with a
                cumulative star count of 75.


                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?

                No



                        Debuggability

                N/A



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

                New test will be added with the patch.


                        Flag name


                        Requires code in //chrome?

                False


                        Tracking bug

                https://crbug.com/1201762 <https://crbug.com/1201762>


                        Launch bug

                https://crbug.com/1120347 <https://crbug.com/1120347>


                        Estimated milestones

                M108


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

                https://github.com/w3c/csswg-drafts/issues/5210
                <https://github.com/w3c/csswg-drafts/issues/5210>


                        Link to entry on the Chrome Platform Status

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

                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+...@chromium.org.
                To view this discussion on the web visit
                
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFxahvsyqk3h2TZwDVJzb1KVgLjqmWDWMs3V9-1sZRA7pXkyOQ%40mail.gmail.com
                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFxahvsyqk3h2TZwDVJzb1KVgLjqmWDWMs3V9-1sZRA7pXkyOQ%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+...@chromium.org.

                To view this discussion on the web visit
                
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/addc5bee-3957-b9f7-9f41-a0a2a7802618%40chromium.org
                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/addc5bee-3957-b9f7-9f41-a0a2a7802618%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/40644a65-1656-497d-a19d-caad46855c64n%40chromium.org
        
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/40644a65-1656-497d-a19d-caad46855c64n%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/CAARdPYeWLsmb0pvEmqOdvhEzaeFuUn-0vva2ofFH5Hn89zjV1g%40mail.gmail.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYeWLsmb0pvEmqOdvhEzaeFuUn-0vva2ofFH5Hn89zjV1g%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/8387bdc3-5088-1767-995e-d739506c4975%40chromium.org.

Reply via email to