[Gap Decorations]: Setup paint for simple gap cases [chromium/src : main]

2 views
Skip to first unread message

Kevin Babbitt (Gerrit)

unread,
Jan 24, 2025, 11:58:15 AM1/24/25
to Sam Davis Omekara, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Kurt Catti-Schmidt and Sam Davis Omekara

Kevin Babbitt added 3 comments

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 633, Patchset 13:BoxSide BoxFragmentPainter::BoxSideFromGridDirection(
Alison Maher . unresolved

Would it make sense for this to live in the anonymous namespace?

Kevin Babbitt

+1, or if the anonymous namespace doesn't make sense for some reason, can it be made `static`?

Line 1408, Patchset 14 (Latest): LayoutUnit row_width = fragment_rect.size.width;
Kevin Babbitt . unresolved

Is this correct, even as a placeholder? Looking at `PaintGridColumnGaps()` I would expect this to be the decoration thickness, and if we're using a placeholder value rather than the property value I'd expect that to be `1`.

Line 1420, Patchset 13: LogicalOffset gap_position(row_left, row_top);
LogicalSize gap_size(row_width, row_height);
LogicalRect gap_logical(gap_position, gap_size);
PhysicalRect gap_rect = converter.ToPhysical(gap_logical);
gap_rect.offset += paint_rect.offset;
gfx::Rect snapped_rule = ToPixelSnappedRect(gap_rect);
BoxBorderPainter::DrawBoxSide(paint_info.context, snapped_rule, box_side,
default_color_for_row,
default_rule_style_for_row, auto_dark_mode);
Alison Maher . unresolved

I wonder if we could pull some of this out to be in a helper between row and column specific versions

Kevin Babbitt

+1

Open in Gerrit

Related details

Attention is currently required from:
  • Kurt Catti-Schmidt
  • Sam Davis Omekara
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
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: I87911c3da7a61562ce5126e396684902de5a1b73
Gerrit-Change-Number: 6101656
Gerrit-PatchSet: 14
Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
Gerrit-CC: Oriol Brufau <obr...@igalia.com>
Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Comment-Date: Fri, 24 Jan 2025 16:58:04 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Alison Maher <alm...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Davis Omekara (Gerrit)

unread,
Jan 24, 2025, 1:23:25 PM1/24/25
to Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alison Maher, Kevin Babbitt and Kurt Catti-Schmidt

Sam Davis Omekara added 19 comments

Commit Message
Line 7, Patchset 13:[Gap Decorations]: Simple paint case
Alison Maher . resolved

nit: "Setup paint for simple gap cases"

Sam Davis Omekara

Done

File third_party/blink/renderer/core/paint/box_fragment_painter.h
Line 78, Patchset 13: // `PaintGridColumnGaps` method because currently row gaps are treated as
// fragmentable which would require painting logic to be quite different.
Alison Maher . resolved

Since we aren't currently plumbing this info for fragmenation, is this true yet?

Sam Davis Omekara

Although we aren't plumbing the info yet, I think it is true today that in grid: "row gaps are fragmentable". But taking a closer at the change(with insights from your other comments), I think I can consolidate both into one method.

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 633, Patchset 13:BoxSide BoxFragmentPainter::BoxSideFromGridDirection(
Alison Maher . resolved

Would it make sense for this to live in the anonymous namespace?

Sam Davis Omekara

Absolutely!!

Line 638, Patchset 13: if (style.IsHorizontalWritingMode()) {
Alison Maher . resolved

Should we add tests for different writing modes?

Sam Davis Omekara

Not a bad idea, but I haven't fully implemented all the logic to handle other writing modes yet. So maybe in a future change.

Haven't looked too deeply, but I suspect offsets/size calculation will change based on writing mode like: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/paint/box_fragment_painter.cc;l=1521?q=box_fragment_painter&ss=chromium

Line 1337, Patchset 13: if (GetPhysicalFragment().IsGrid()) {
Alison Maher . unresolved

nit: we could combine this with the if-statement above

Sam Davis Omekara

I think ultimately(before this CL lands), this code block wouldn't even live here. It will live somewhere in `BoxFrgamnetPainter::PaintBoxDecorationBackgroundWithRectImpl`[1]. I think Ian suggested after Border painting but still need his confirmation.

[1]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/paint/box_fragment_painter.cc;l=1363?q=box_fragment_painter&ss=chromium

Line 1338, Patchset 13: const GapFragmentData::GapGeometry* gap_geometry =
box_fragment_.GapGeometry();
CHECK(gap_geometry);

PaintGridRowGaps(paint_info, paint_rect, gap_geometry->rows);
PaintGridColumnGaps(paint_info, paint_rect, gap_geometry->columns);
Alison Maher . unresolved

I wonder if we should move this to its own method. Or even potentially considering creating a painter class specifically for gap decorations, similar to the table related painters above.

Sam Davis Omekara

Moved to its own method. Open to creating a class if that's needed but like I mentioned in an earlier comment this code block will most likely sit somewhere in `BoxFrgamnetPainter::PaintBoxDecorationBackgroundWithRectImpl` and a method should suffice there.

Line 1368, Patchset 13: // Below logic, for offsets and size would change once we start painting based
// on gap intersection pairs.
Alison Maher . unresolved

nit: I'm not sure I fully follow what this means

Sam Davis Omekara

Taken out but I wanted to point out a good chunk of the painting logic for offsets and size would change when we incorporate painting based on the intersection points as spec'd.

Line 1380, Patchset 13: LogicalOffset gap_position(column_left, column_top);
Alison Maher . resolved

nit: I might add a line above this one

Sam Davis Omekara

Done

Line 1382, Patchset 13: LogicalRect gap_logical(gap_position, gap_size);
Alison Maher . resolved

nit: I might add a line below this one

Sam Davis Omekara

Done

Line 1386, Patchset 13: BoxBorderPainter::DrawBoxSide(paint_info.context, snapped_rule, box_side,
Alison Maher . resolved

nit: could plug `ToPixelSnappedRect(gap_rect)` in directly

Sam Davis Omekara

Done

Line 1400, Patchset 13: PaintAutoDarkMode(style, DarkModeFilter::ElementRole::kBackground));
Alison Maher . resolved

nit: I might add an extra line after this line

Sam Davis Omekara

Done

Line 1401, Patchset 13: // TODO(crbug.com/357648037): Using default values, this should be retrieved
Alison Maher . resolved

nit: "hard coded"

Sam Davis Omekara

Done

Line 1401, Patchset 13: // TODO(crbug.com/357648037): Using default values, this should be retrieved
Alison Maher . resolved

"These values"

Sam Davis Omekara

Done

Line 1401, Patchset 13: // TODO(crbug.com/357648037): Using default values, this should be retrieved
Alison Maher . resolved

nit: "."

Sam Davis Omekara

Done

Line 1406, Patchset 13: PhysicalRect fragment_rect = box_fragment_.LocalRect();
Alison Maher . resolved

nit: I might add an extra line before this line

Sam Davis Omekara

Done

Line 1408, Patchset 14: LayoutUnit row_width = fragment_rect.size.width;
Kevin Babbitt . unresolved

Is this correct, even as a placeholder? Looking at `PaintGridColumnGaps()` I would expect this to be the decoration thickness, and if we're using a placeholder value rather than the property value I'd expect that to be `1`.

Sam Davis Omekara

I see your point; but the `rule_thickness` will apply to the `row_height` not `row_width` since rows flow in the block direction. From conversations with Ian, I think for now we want to paint full row gaps since it'll be hard to determine the "center" when row gaps are fragmented. So this logic paints decorations in the entire row gap.

Line 1420, Patchset 13: LogicalOffset gap_position(row_left, row_top);
Alison Maher . resolved

nit: I'd probably add some extra spacing similar to comments in the column method

Sam Davis Omekara

Done

Line 1420, Patchset 13: LogicalOffset gap_position(row_left, row_top);
LogicalSize gap_size(row_width, row_height);
LogicalRect gap_logical(gap_position, gap_size);
PhysicalRect gap_rect = converter.ToPhysical(gap_logical);
gap_rect.offset += paint_rect.offset;
gfx::Rect snapped_rule = ToPixelSnappedRect(gap_rect);
BoxBorderPainter::DrawBoxSide(paint_info.context, snapped_rule, box_side,
default_color_for_row,
default_rule_style_for_row, auto_dark_mode);
Alison Maher . unresolved

I wonder if we could pull some of this out to be in a helper between row and column specific versions

Kevin Babbitt

+1

Sam Davis Omekara

Ended up consolidating everything to one function that handles offsets based of the track direction. Let me know if this is sufficient!

File third_party/blink/renderer/core/style/computed_style.h
Line 1004, Patchset 13: return ColumnRuleWidth().GetLegacyValue() && !ColumnRuleIsTransparent() &&
BorderStyleIsVisible(ColumnRuleStyle().GetLegacyValue());
Alison Maher . unresolved

Since this is the same logic as in the last part of `HasColumnRule()`, we could move that to a helper to reduce repeated logic

Sam Davis Omekara

Attempted this in an earlier patch but`HasColumnRule()` needs the `column` property defined to return true [1]--this doesn't apply to grid/flex. Do you think we should augment `HasColumnRule()` by looking at the `display` property?

[1]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/style/computed_style.h;l=976?q=HasColumnRu&ss=chromium

Open in Gerrit

Related details

Attention is currently required from:
  • Alison Maher
  • Kevin Babbitt
  • Kurt Catti-Schmidt
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
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: I87911c3da7a61562ce5126e396684902de5a1b73
Gerrit-Change-Number: 6101656
Gerrit-PatchSet: 16
Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
Gerrit-CC: Oriol Brufau <obr...@igalia.com>
Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Attention: Alison Maher <alm...@microsoft.com>
Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Comment-Date: Fri, 24 Jan 2025 18:23:15 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Kevin Babbitt <kbab...@microsoft.com>
Comment-In-Reply-To: Alison Maher <alm...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Davis Omekara (Gerrit)

unread,
Jan 24, 2025, 1:24:57 PM1/24/25
to Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alison Maher, Kevin Babbitt and Kurt Catti-Schmidt

Sam Davis Omekara added 1 comment

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1368, Patchset 13: // Below logic, for offsets and size would change once we start painting based
// on gap intersection pairs.
Alison Maher . resolved

nit: I'm not sure I fully follow what this means

Sam Davis Omekara

Taken out but I wanted to point out a good chunk of the painting logic for offsets and size would change when we incorporate painting based on the intersection points as spec'd.

Sam Davis Omekara

Done

Gerrit-Comment-Date: Fri, 24 Jan 2025 18:24:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Sam Davis Omekara <samome...@microsoft.com>
Comment-In-Reply-To: Alison Maher <alm...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Davis Omekara (Gerrit)

unread,
Jan 24, 2025, 1:25:22 PM1/24/25
to Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alison Maher, Kevin Babbitt and Kurt Catti-Schmidt

Sam Davis Omekara added 1 comment

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1359, Patchset 13: // TODO(crbug.com/357648037): Only using one value, should update this and
Alison Maher . resolved

nit: "We are currently only painting gaps with a single color, but we should update this to paint all values potentially set by the author."

Also might be worth noting this in the CL description.

Sam Davis Omekara

Done

Gerrit-Comment-Date: Fri, 24 Jan 2025 18:25:10 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Alison Maher <alm...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Davis Omekara (Gerrit)

unread,
Jan 24, 2025, 1:27:45 PM1/24/25
to Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alison Maher, Kevin Babbitt and Kurt Catti-Schmidt

Sam Davis Omekara added 1 comment

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1516, Patchset 16 (Latest): if (RuntimeEnabledFeatures::CSSGapDecorationEnabled() &&
Sam Davis Omekara . unresolved

Painting gap decorations after borders. Should add a TODO that this might change depending on the resolution on the paint order issue.

Gerrit-Comment-Date: Fri, 24 Jan 2025 18:27:35 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Alison Maher (Gerrit)

unread,
Jan 24, 2025, 2:00:23 PM1/24/25
to Sam Davis Omekara, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Kevin Babbitt, Kurt Catti-Schmidt and Sam Davis Omekara

Alison Maher added 6 comments

File third_party/blink/renderer/core/paint/box_fragment_painter.h
Line 73, Patchset 16 (Latest): void PaintGapDecorations(const PaintInfo&, const PhysicalRect& paint_rect);
void PaintGridGaps(GridTrackSizingDirection track_direction,
Alison Maher . unresolved

Can we make both of these private?

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1337, Patchset 13: if (GetPhysicalFragment().IsGrid()) {
Alison Maher . resolved

nit: we could combine this with the if-statement above

Sam Davis Omekara

I think ultimately(before this CL lands), this code block wouldn't even live here. It will live somewhere in `BoxFrgamnetPainter::PaintBoxDecorationBackgroundWithRectImpl`[1]. I think Ian suggested after Border painting but still need his confirmation.

[1]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/paint/box_fragment_painter.cc;l=1363?q=box_fragment_painter&ss=chromium

Alison Maher

I was just noting that we could get rid of the nested if-statements, but it looks like that has been cleaned up otherwise, so resolving.

Line 1337, Patchset 16 (Latest): if (GetPhysicalFragment().IsGrid()) {
Alison Maher . unresolved

I would suggest reversing this check to the following:

```
if (!GetPhysicalFragment().IsGrid()) {
return
}
...
```
Line 1338, Patchset 13: const GapFragmentData::GapGeometry* gap_geometry =
box_fragment_.GapGeometry();
CHECK(gap_geometry);

PaintGridRowGaps(paint_info, paint_rect, gap_geometry->rows);
PaintGridColumnGaps(paint_info, paint_rect, gap_geometry->columns);
Alison Maher . resolved

I wonder if we should move this to its own method. Or even potentially considering creating a painter class specifically for gap decorations, similar to the table related painters above.

Sam Davis Omekara

Moved to its own method. Open to creating a class if that's needed but like I mentioned in an earlier comment this code block will most likely sit somewhere in `BoxFrgamnetPainter::PaintBoxDecorationBackgroundWithRectImpl` and a method should suffice there.

Alison Maher

Acknowledged

Line 1420, Patchset 13: LogicalOffset gap_position(row_left, row_top);
LogicalSize gap_size(row_width, row_height);
LogicalRect gap_logical(gap_position, gap_size);
PhysicalRect gap_rect = converter.ToPhysical(gap_logical);
gap_rect.offset += paint_rect.offset;
gfx::Rect snapped_rule = ToPixelSnappedRect(gap_rect);
BoxBorderPainter::DrawBoxSide(paint_info.context, snapped_rule, box_side,
default_color_for_row,
default_rule_style_for_row, auto_dark_mode);
Alison Maher . resolved

I wonder if we could pull some of this out to be in a helper between row and column specific versions

Kevin Babbitt

+1

Sam Davis Omekara

Ended up consolidating everything to one function that handles offsets based of the track direction. Let me know if this is sufficient!

Alison Maher

Acknowledged

File third_party/blink/renderer/core/style/computed_style.h
Line 1004, Patchset 13: return ColumnRuleWidth().GetLegacyValue() && !ColumnRuleIsTransparent() &&
BorderStyleIsVisible(ColumnRuleStyle().GetLegacyValue());
Alison Maher . unresolved

Since this is the same logic as in the last part of `HasColumnRule()`, we could move that to a helper to reduce repeated logic

Sam Davis Omekara

Attempted this in an earlier patch but`HasColumnRule()` needs the `column` property defined to return true [1]--this doesn't apply to grid/flex. Do you think we should augment `HasColumnRule()` by looking at the `display` property?

[1]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/style/computed_style.h;l=976?q=HasColumnRu&ss=chromium

Alison Maher

My thinking was to pull just `ColumnRuleWidth().GetLegacyValue() && !ColumnRuleIsTransparent() && BorderStyleIsVisible(ColumnRuleStyle().GetLegacyValue());` out and then have each of the methods call a helper that calculates just that. That way we don't have to duplicate the same logic. We can probably do the same for row, which would be shared between flex and grid.

But combining them and checking the display type could work, too and may end up being cleaner.

Open in Gerrit

Related details

Attention is currently required from:
  • Kevin Babbitt
  • Kurt Catti-Schmidt
  • Sam Davis Omekara
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
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: I87911c3da7a61562ce5126e396684902de5a1b73
Gerrit-Change-Number: 6101656
Gerrit-PatchSet: 16
Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
Gerrit-CC: Oriol Brufau <obr...@igalia.com>
Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Comment-Date: Fri, 24 Jan 2025 19:00:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: Kevin Babbitt <kbab...@microsoft.com>
satisfied_requirement
unsatisfied_requirement
open
diffy

Sam Davis Omekara (Gerrit)

unread,
Jan 24, 2025, 5:53:14 PM1/24/25
to Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alison Maher, Kevin Babbitt and Kurt Catti-Schmidt

Sam Davis Omekara added 4 comments

File third_party/blink/renderer/core/paint/box_fragment_painter.h
Line 73, Patchset 16: void PaintGapDecorations(const PaintInfo&, const PhysicalRect& paint_rect);
void PaintGridGaps(GridTrackSizingDirection track_direction,
Alison Maher . resolved

Can we make both of these private?

Sam Davis Omekara

Done

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1337, Patchset 16: if (GetPhysicalFragment().IsGrid()) {
Alison Maher . resolved

I would suggest reversing this check to the following:

```
if (!GetPhysicalFragment().IsGrid()) {
return
}
...
```
Sam Davis Omekara

Done. Also added a note for flexbox implementation in future

Line 1516, Patchset 16: if (RuntimeEnabledFeatures::CSSGapDecorationEnabled() &&
Sam Davis Omekara . resolved

Painting gap decorations after borders. Should add a TODO that this might change depending on the resolution on the paint order issue.

Sam Davis Omekara

Done

File third_party/blink/renderer/core/style/computed_style.h
Line 1004, Patchset 13: return ColumnRuleWidth().GetLegacyValue() && !ColumnRuleIsTransparent() &&
BorderStyleIsVisible(ColumnRuleStyle().GetLegacyValue());
Alison Maher . resolved

Since this is the same logic as in the last part of `HasColumnRule()`, we could move that to a helper to reduce repeated logic

Sam Davis Omekara

Attempted this in an earlier patch but`HasColumnRule()` needs the `column` property defined to return true [1]--this doesn't apply to grid/flex. Do you think we should augment `HasColumnRule()` by looking at the `display` property?

[1]: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/style/computed_style.h;l=976?q=HasColumnRu&ss=chromium

Alison Maher

My thinking was to pull just `ColumnRuleWidth().GetLegacyValue() && !ColumnRuleIsTransparent() && BorderStyleIsVisible(ColumnRuleStyle().GetLegacyValue());` out and then have each of the methods call a helper that calculates just that. That way we don't have to duplicate the same logic. We can probably do the same for row, which would be shared between flex and grid.

But combining them and checking the display type could work, too and may end up being cleaner.

Sam Davis Omekara

Okay, just did that. I included a check for just grid for now, will augment for flex box, masonry as we progress.

Open in Gerrit

Related details

Attention is currently required from:
  • Alison Maher
  • Kevin Babbitt
  • Kurt Catti-Schmidt
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedNo-Unresolved-Comments
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: I87911c3da7a61562ce5126e396684902de5a1b73
Gerrit-Change-Number: 6101656
Gerrit-PatchSet: 17
Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
Gerrit-CC: Oriol Brufau <obr...@igalia.com>
Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
Gerrit-Attention: Alison Maher <alm...@microsoft.com>
Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
Gerrit-Comment-Date: Fri, 24 Jan 2025 22:53:03 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Alison Maher (Gerrit)

unread,
Jan 24, 2025, 7:04:31 PM1/24/25
to Sam Davis Omekara, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Kevin Babbitt, Kurt Catti-Schmidt and Sam Davis Omekara

Alison Maher voted and added 3 comments

Votes added by Alison Maher

Code-Review+1

3 comments

File third_party/blink/renderer/core/paint/box_fragment_painter.cc
Line 1520, Patchset 17 (Latest): // borders, this is likely to change following the resolution of the paint
Alison Maher . unresolved

nit: ". T"

Line 1521, Patchset 17 (Latest): // order issue for gap decorations.
Alison Maher . unresolved

nit: do we have a github issue to link to for this?

File third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-002.html
Line 3, Patchset 17 (Latest): CSS Gap Decorations: column and row gaps are painted.
Alison Maher . unresolved

nit: might be worth adding a bit to the title for these to indicate what specifically is being tested (for example, "with dotted rule styling")

Open in Gerrit

Related details

Attention is currently required from:
  • Kevin Babbitt
  • Kurt Catti-Schmidt
  • Sam Davis Omekara
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 17
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Sat, 25 Jan 2025 00:04:19 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    David Grogan (Gerrit)

    unread,
    Jan 24, 2025, 8:12:08 PM1/24/25
    to Sam Davis Omekara, David Grogan, Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kevin Babbitt, Kurt Catti-Schmidt and Sam Davis Omekara

    David Grogan added 1 comment

    File third_party/blink/renderer/core/paint/box_fragment_painter.cc
    Line 1380, Patchset 17 (Latest): rule_thickness = LayoutUnit(0);
    David Grogan . unresolved

    drive-by nit: Remove 0, `LayoutUnit`'s default constructor does that for you and omitting 0 is minutely faster.

    (Though I think you can just omit this entire line)

    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Sat, 25 Jan 2025 01:11:58 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    David Grogan (Gerrit)

    unread,
    Jan 24, 2025, 8:13:37 PM1/24/25
    to Sam Davis Omekara, David Grogan, Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kevin Babbitt, Kurt Catti-Schmidt and Sam Davis Omekara

    David Grogan added 1 comment

    File third_party/blink/renderer/core/paint/box_fragment_painter.cc
    Line 1380, Patchset 17 (Latest): rule_thickness = LayoutUnit(0);
    David Grogan . resolved

    drive-by nit: Remove 0, `LayoutUnit`'s default constructor does that for you and omitting 0 is minutely faster.

    (Though I think you can just omit this entire line)

    David Grogan

    Oh, I see that this code has a short life expectancy, so whatever.

    Gerrit-Comment-Date: Sat, 25 Jan 2025 01:13:25 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: David Grogan <dgr...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Sam Davis Omekara (Gerrit)

    unread,
    Jan 27, 2025, 3:35:39 AM1/27/25
    to David Grogan, Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kevin Babbitt and Kurt Catti-Schmidt

    Sam Davis Omekara added 4 comments

    File third_party/blink/renderer/core/paint/box_fragment_painter.cc
    Line 1380, Patchset 17: rule_thickness = LayoutUnit(0);
    David Grogan . resolved

    drive-by nit: Remove 0, `LayoutUnit`'s default constructor does that for you and omitting 0 is minutely faster.

    (Though I think you can just omit this entire line)

    David Grogan

    Oh, I see that this code has a short life expectancy, so whatever.

    Sam Davis Omekara

    Still useful to know. Thank you!

    Line 1520, Patchset 17: // borders, this is likely to change following the resolution of the paint
    Alison Maher . resolved

    nit: ". T"

    Sam Davis Omekara

    Done

    Line 1521, Patchset 17: // order issue for gap decorations.
    Alison Maher . resolved

    nit: do we have a github issue to link to for this?

    Sam Davis Omekara

    no we don't. not yet

    File third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-002.html
    Line 3, Patchset 17: CSS Gap Decorations: column and row gaps are painted.
    Alison Maher . resolved

    nit: might be worth adding a bit to the title for these to indicate what specifically is being tested (for example, "with dotted rule styling")

    Sam Davis Omekara

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Kevin Babbitt
    • Kurt Catti-Schmidt
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 18
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Mon, 27 Jan 2025 08:35:28 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Alison Maher <alm...@microsoft.com>
    Comment-In-Reply-To: David Grogan <dgr...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Kevin Babbitt (Gerrit)

    unread,
    Jan 27, 2025, 12:45:55 PM1/27/25
    to Sam Davis Omekara, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kurt Catti-Schmidt and Sam Davis Omekara

    Kevin Babbitt added 2 comments

    File third_party/blink/renderer/core/paint/box_fragment_painter.cc
    Line 1408, Patchset 14: LayoutUnit row_width = fragment_rect.size.width;
    Kevin Babbitt . resolved

    Is this correct, even as a placeholder? Looking at `PaintGridColumnGaps()` I would expect this to be the decoration thickness, and if we're using a placeholder value rather than the property value I'd expect that to be `1`.

    Sam Davis Omekara

    I see your point; but the `rule_thickness` will apply to the `row_height` not `row_width` since rows flow in the block direction. From conversations with Ian, I think for now we want to paint full row gaps since it'll be hard to determine the "center" when row gaps are fragmented. So this logic paints decorations in the entire row gap.

    Kevin Babbitt

    Acknowledged

    File third_party/blink/renderer/core/style/computed_style.h
    Line 995, Patchset 18 (Latest): if (!SpecifiesColumns() && Display() != EDisplay::kGrid) [[likely]] {
    Kevin Babbitt . unresolved

    Does this impact column rules on multicol containers?

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Kurt Catti-Schmidt
    • Sam Davis Omekara
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 18
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Mon, 27 Jan 2025 17:45:43 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Kevin Babbitt <kbab...@microsoft.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Sam Davis Omekara (Gerrit)

    unread,
    Jan 27, 2025, 12:52:29 PM1/27/25
    to David Grogan, Alison Maher, Kevin Babbitt, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kevin Babbitt and Kurt Catti-Schmidt

    Sam Davis Omekara added 1 comment

    File third_party/blink/renderer/core/style/computed_style.h
    Line 995, Patchset 18 (Latest): if (!SpecifiesColumns() && Display() != EDisplay::kGrid) [[likely]] {
    Kevin Babbitt . unresolved

    Does this impact column rules on multicol containers?

    Sam Davis Omekara

    No, the behavior for multicol containers remains unchanged. The check removes the requirement of having to specify the `columns` property for grid containers.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Kevin Babbitt
    • Kurt Catti-Schmidt
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 18
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Mon, 27 Jan 2025 17:52:15 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Kevin Babbitt (Gerrit)

    unread,
    Jan 27, 2025, 4:24:16 PM1/27/25
    to Sam Davis Omekara, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kurt Catti-Schmidt and Sam Davis Omekara

    Kevin Babbitt voted and added 1 comment

    Votes added by Kevin Babbitt

    Code-Review+1

    1 comment

    File third_party/blink/renderer/core/style/computed_style.h
    Line 995, Patchset 18 (Latest): if (!SpecifiesColumns() && Display() != EDisplay::kGrid) [[likely]] {
    Kevin Babbitt . resolved

    Does this impact column rules on multicol containers?

    Sam Davis Omekara

    No, the behavior for multicol containers remains unchanged. The check removes the requirement of having to specify the `columns` property for grid containers.

    Kevin Babbitt

    Ah, okay, I get it now.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Kurt Catti-Schmidt
    • Sam Davis Omekara
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 18
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Mon, 27 Jan 2025 21:24:05 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Blink W3C Test Autoroller (Gerrit)

    unread,
    Jan 27, 2025, 4:34:20 PM1/27/25
    to Sam Davis Omekara, Kevin Babbitt, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, Kurt Catti-Schmidt, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Kurt Catti-Schmidt and Sam Davis Omekara

    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/50318.

    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:
    • Kurt Catti-Schmidt
    • Sam Davis Omekara
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    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: I87911c3da7a61562ce5126e396684902de5a1b73
    Gerrit-Change-Number: 6101656
    Gerrit-PatchSet: 18
    Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
    Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
    Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
    Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
    Gerrit-CC: David Grogan <dgr...@chromium.org>
    Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
    Gerrit-CC: Oriol Brufau <obr...@igalia.com>
    Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
    Gerrit-Attention: Kurt Catti-Schmidt <ksc...@microsoft.com>
    Gerrit-Comment-Date: Mon, 27 Jan 2025 21:34:07 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: No
    satisfied_requirement
    open
    diffy

    Kurt Catti-Schmidt (Gerrit)

    unread,
    Jan 27, 2025, 4:35:25 PM1/27/25
    to Sam Davis Omekara, Blink W3C Test Autoroller, Kevin Babbitt, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Sam Davis Omekara

    Kurt Catti-Schmidt voted and added 3 comments

    Votes added by Kurt Catti-Schmidt

    Code-Review+1

    3 comments

    File third_party/blink/renderer/core/paint/box_decoration_data.h
    Line 145, Patchset 17: return style_.HasColumnRule();
    Kurt Catti-Schmidt . unresolved

    Is this going to be expanded over time? If so, add a TODO comment.

    File third_party/blink/renderer/core/paint/box_fragment_painter.cc
    Line 1356, Patchset 18 (Latest):
    WritingModeConverter converter(style.GetWritingDirection(),
    box_fragment_.Size());
    Kurt Catti-Schmidt . unresolved

    Does this need to be declared up here? Looks like it's not used until the end of the method.

    Line 1383, Patchset 17: PhysicalRect local_rect = box_fragment_.LocalRect();
    Kurt Catti-Schmidt . unresolved

    const

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Sam Davis Omekara
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      • requirement is not satisfiedNo-Unresolved-Comments
      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: I87911c3da7a61562ce5126e396684902de5a1b73
      Gerrit-Change-Number: 6101656
      Gerrit-PatchSet: 18
      Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
      Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
      Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
      Gerrit-CC: David Grogan <dgr...@chromium.org>
      Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
      Gerrit-CC: Oriol Brufau <obr...@igalia.com>
      Gerrit-Attention: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Comment-Date: Mon, 27 Jan 2025 21:35:13 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Sam Davis Omekara (Gerrit)

      unread,
      Jan 28, 2025, 5:07:23 AM1/28/25
      to Kurt Catti-Schmidt, Blink W3C Test Autoroller, Kevin Babbitt, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
      Attention needed from Ian Kilpatrick

      Sam Davis Omekara added 3 comments

      File third_party/blink/renderer/core/paint/box_decoration_data.h
      Line 145, Patchset 17: return style_.HasColumnRule();
      Kurt Catti-Schmidt . resolved

      Is this going to be expanded over time? If so, add a TODO comment.

      Sam Davis Omekara

      Oh we decided to consolidate into that singular function `HasColumnRule()`
      See:
      https://chromium-review.googlesource.com/c/chromium/src/+/6101656/comment/972c7f25_c5718c14/

      File third_party/blink/renderer/core/paint/box_fragment_painter.cc
      Line 1356, Patchset 18:
      WritingModeConverter converter(style.GetWritingDirection(),
      box_fragment_.Size());
      Kurt Catti-Schmidt . resolved

      Does this need to be declared up here? Looks like it's not used until the end of the method.

      Line 1383, Patchset 17: PhysicalRect local_rect = box_fragment_.LocalRect();
      Kurt Catti-Schmidt . resolved

      const

      Sam Davis Omekara

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Ian Kilpatrick
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      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: I87911c3da7a61562ce5126e396684902de5a1b73
      Gerrit-Change-Number: 6101656
      Gerrit-PatchSet: 19
      Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
      Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
      Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
      Gerrit-CC: David Grogan <dgr...@chromium.org>
      Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
      Gerrit-CC: Oriol Brufau <obr...@igalia.com>
      Gerrit-Attention: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Comment-Date: Tue, 28 Jan 2025 10:07:09 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Kurt Catti-Schmidt <ksc...@microsoft.com>
      satisfied_requirement
      open
      diffy

      Sam Davis Omekara (Gerrit)

      unread,
      Jan 30, 2025, 2:16:36 AM1/30/25
      to Kurt Catti-Schmidt, Blink W3C Test Autoroller, Kevin Babbitt, David Grogan, Alison Maher, Chromium LUCI CQ, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
      Attention needed from Ian Kilpatrick

      Sam Davis Omekara voted Commit-Queue+2

      Commit-Queue+2
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Ian Kilpatrick
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      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: I87911c3da7a61562ce5126e396684902de5a1b73
      Gerrit-Change-Number: 6101656
      Gerrit-PatchSet: 20
      Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
      Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
      Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
      Gerrit-CC: David Grogan <dgr...@chromium.org>
      Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
      Gerrit-CC: Oriol Brufau <obr...@igalia.com>
      Gerrit-Attention: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Comment-Date: Thu, 30 Jan 2025 07:16:26 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      open
      diffy

      Chromium LUCI CQ (Gerrit)

      unread,
      Jan 30, 2025, 3:00:18 AM1/30/25
      to Sam Davis Omekara, Kurt Catti-Schmidt, Blink W3C Test Autoroller, Kevin Babbitt, David Grogan, Alison Maher, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org

      Chromium LUCI CQ submitted the change with unreviewed changes

      Unreviewed changes

      18 is the latest approved patch-set.
      The change was submitted with unreviewed changes in the following files:

      ```
      The name of the file: third_party/blink/renderer/core/paint/box_fragment_painter.cc
      Insertions: 1, Deletions: 1.

      The diff is too large to show. Please review the diff.
      ```

      Change information

      Commit message:
      [Gap Decorations]: Setup paint for simple gap cases

      This CL uses the gap geometry from crrev.com/c/6092603 to paint gap
      decorations within grid. The change begins by introducing a
      `ShouldPaintGapDecorations` method in the `BoxDecorationData` class.
      This method affects the `ShouldPaint` method, ensuring that gap
      decorations are painted when necessary.

      Next, two methods, `PaintColumnGaps` and `PaintRowGaps`, are
      implemented in the `BoxFragmentPainter` class. These methods use the
      stored offsets to construct rects, which are passed to appropriate
      paint ops.

      Future changes will preliminarily handle row fragmentation and
      update the painting logic to use gap intersection pairs, as outlined in
      the spec: https://drafts.csswg.org/css-gaps-1/#break.
      Bug: 357648037
      Change-Id: I87911c3da7a61562ce5126e396684902de5a1b73
      Reviewed-by: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Reviewed-by: Kevin Babbitt <kbab...@microsoft.com>
      Reviewed-by: Alison Maher <alm...@microsoft.com>
      Commit-Queue: Sam Davis Omekara <samome...@microsoft.com>
      Cr-Commit-Position: refs/heads/main@{#1413342}
      Files:
      • M third_party/blink/renderer/core/layout/physical_box_fragment.cc
      • M third_party/blink/renderer/core/paint/box_decoration_data.h
      • M third_party/blink/renderer/core/paint/box_fragment_painter.cc
      • M third_party/blink/renderer/core/paint/box_fragment_painter.h
      • M third_party/blink/renderer/core/style/computed_style.h
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-001.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-002-ref.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-002.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-003-ref.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-003.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-004-ref.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-004.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-005-ref.html
      • A third_party/blink/web_tests/external/wpt/css/css-gaps/tentative/grid/grid-gap-decorations-005.html
      Change size: L
      Delta: 14 files changed, 473 insertions(+), 5 deletions(-)
      Branch: refs/heads/main
      Submit Requirements:
      • requirement satisfiedCode-Review: +1 by Alison Maher, +1 by Kevin Babbitt, +1 by Kurt Catti-Schmidt
      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: I87911c3da7a61562ce5126e396684902de5a1b73
      Gerrit-Change-Number: 6101656
      Gerrit-PatchSet: 21
      Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
      Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
      Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
      open
      diffy
      satisfied_requirement

      Blink W3C Test Autoroller (Gerrit)

      unread,
      Jan 30, 2025, 3:27:14 AM1/30/25
      to Sam Davis Omekara, Chromium LUCI CQ, Kurt Catti-Schmidt, Kevin Babbitt, David Grogan, Alison Maher, Ian Kilpatrick, Oriol Brufau, Javier Fernandez, AyeAye, chromium...@chromium.org, blink-revie...@chromium.org, zol...@webkit.org, blink-revi...@chromium.org, blink-rev...@chromium.org, blink-rev...@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/50318

      Open in Gerrit

      Related details

      Attention set is empty
      Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement satisfiedCode-Review
      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: I87911c3da7a61562ce5126e396684902de5a1b73
      Gerrit-Change-Number: 6101656
      Gerrit-PatchSet: 21
      Gerrit-Owner: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-Reviewer: Alison Maher <alm...@microsoft.com>
      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
      Gerrit-Reviewer: Ian Kilpatrick <ikilp...@chromium.org>
      Gerrit-Reviewer: Kevin Babbitt <kbab...@microsoft.com>
      Gerrit-Reviewer: Kurt Catti-Schmidt <ksc...@microsoft.com>
      Gerrit-Reviewer: Sam Davis Omekara <samome...@microsoft.com>
      Gerrit-CC: Blink W3C Test Autoroller <blink-w3c-te...@chromium.org>
      Gerrit-CC: David Grogan <dgr...@chromium.org>
      Gerrit-CC: Javier Fernandez <jfern...@igalia.com>
      Gerrit-CC: Oriol Brufau <obr...@igalia.com>
      Gerrit-Comment-Date: Thu, 30 Jan 2025 08:27:06 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: No
      satisfied_requirement
      open
      diffy
      Reply all
      Reply to author
      Forward
      0 new messages