[layout] Fix OOF-positioned margin under-invalidation. [chromium/src : main]

0 views
Skip to first unread message

Ian Kilpatrick (Gerrit)

unread,
Jul 27, 2026, 5:56:55 PM (yesterday) Jul 27
to David Grogan, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org
Attention needed from David Grogan

Ian Kilpatrick voted Commit-Queue+1

Commit-Queue+1
Open in Gerrit

Related details

Attention is currently required from:
  • David Grogan
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
Gerrit-Change-Number: 8157320
Gerrit-PatchSet: 6
Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-Attention: David Grogan <dgr...@chromium.org>
Gerrit-Comment-Date: Mon, 27 Jul 2026 21:56:46 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

David Grogan (Gerrit)

unread,
Jul 27, 2026, 5:59:22 PM (yesterday) Jul 27
to Ian Kilpatrick, David Grogan, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org
Attention needed from Ian Kilpatrick

David Grogan voted Code-Review+1

Code-Review+1
Open in Gerrit

Related details

Attention is currently required from:
  • Ian Kilpatrick
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Gerrit-Change-Number: 8157320
    Gerrit-PatchSet: 6
    Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Attention: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Comment-Date: Mon, 27 Jul 2026 21:59:04 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Blink W3C Test Autoroller (Gerrit)

    unread,
    Jul 27, 2026, 6:06:56 PM (yesterday) Jul 27
    to Ian Kilpatrick, David Grogan, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org
    Attention needed from Ian Kilpatrick

    Message from Blink W3C Test Autoroller

    Exportable changes to web-platform-tests were detected in this CL and a pull request in the upstream repo has been made: https://github.com/web-platform-tests/wpt/pull/61561.

    When this CL lands, the bot will automatically merge the PR on GitHub if the required GitHub checks pass; otherwise, ecosystem-infra@ team will triage the failures and may contact you.

    WPT Export docs:
    https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md#Automatic-export-process

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Ian Kilpatrick
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Gerrit-Change-Number: 8157320
    Gerrit-PatchSet: 6
    Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Attention: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Comment-Date: Mon, 27 Jul 2026 22:06:47 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: No
    satisfied_requirement
    open
    diffy

    Ian Kilpatrick (Gerrit)

    unread,
    Jul 27, 2026, 6:12:28 PM (yesterday) Jul 27
    to Blink W3C Test Autoroller, David Grogan, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org

    Ian Kilpatrick voted Commit-Queue+2

    Commit-Queue+2
    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Gerrit-Change-Number: 8157320
    Gerrit-PatchSet: 6
    Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Comment-Date: Mon, 27 Jul 2026 22:12:10 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Chromium LUCI CQ (Gerrit)

    unread,
    Jul 27, 2026, 7:11:02 PM (yesterday) Jul 27
    to Ian Kilpatrick, Blink W3C Test Autoroller, David Grogan, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org

    Chromium LUCI CQ submitted the change

    Change information

    Commit message:
    [layout] Fix OOF-positioned margin under-invalidation.

    In crrev.com/c/7812714 we simplified the OOF layout code by making the
    constraint-space construction the same for the two places where we
    invoke layout on a non-replaced element.

    This introduced an under-invaldation bug when margins change.

    Previously when a margin changed, we'd calculate a new fixed-block size,
    which would cause the cache-miss. Importantly for OOF-positioned we
    don't mark the layout-object as dirty when a margin changes.

    With the new code we would potentially just compare the
    constraint-spaces directly (without computing the block-size), causes
    the incorrect cache-hit.

    Skipping the margin layout invalidation likely isn't important for
    real-world use-cases so just mark a layout object as needing layout for
    this case.

    Additionally remove the two bespoke field-diffs:
    - "margin" just becomes "layout" for OOF.
    - "out-of-flow" switches to "inset", and now we just check if we have
    non-static position.
    Bug: 539404705
    Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Commit-Queue: Ian Kilpatrick <ikilp...@chromium.org>
    Reviewed-by: David Grogan <dgr...@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1669065}
    Files:
    • M third_party/blink/renderer/core/css/css_properties.json5
    • M third_party/blink/renderer/core/style/computed_style.cc
    • M third_party/blink/renderer/core/style/computed_style.h
    • A third_party/blink/web_tests/external/wpt/css/css-position/position-absolute-dynamic-relayout-007.html
    Change size: S
    Delta: 4 files changed, 21 insertions(+), 22 deletions(-)
    Branch: refs/heads/main
    Submit Requirements:
    • requirement satisfiedCode-Review: +1 by David Grogan
    Open in Gerrit
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: merged
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Gerrit-Change-Number: 8157320
    Gerrit-PatchSet: 7
    Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
    Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
    open
    diffy
    satisfied_requirement

    Blink W3C Test Autoroller (Gerrit)

    unread,
    Jul 27, 2026, 7:52:08 PM (yesterday) Jul 27
    to Chromium LUCI CQ, Ian Kilpatrick, David Grogan, Menard, Alexis, chromium...@chromium.org, apavlo...@chromium.org, blink-re...@chromium.org, blink-rev...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org

    Message from Blink W3C Test Autoroller

    The WPT PR for this CL has been merged upstream! https://github.com/web-platform-tests/wpt/pull/61561

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: If54326af096c8cb30308e7274c515e859760ea9f
    Gerrit-Change-Number: 8157320
    Gerrit-PatchSet: 7
    Gerrit-Owner: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
    Gerrit-Reviewer: David Grogan <dgr...@chromium.org>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-Comment-Date: Mon, 27 Jul 2026 23:51:57 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: No
    satisfied_requirement
    open
    diffy
    Reply all
    Reply to author
    Forward
    0 new messages