New issue
Advanced search Search tips

Issue 714962 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Dec 12
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Task


Sign in to add a comment

[LayoutNG] Paint inlines from fragment tree

Project Member Reported by e...@chromium.org, Apr 25 2017

Issue description

Tracking bug for painting directly from the LayoutNG fragment tree.
 
Showing comments 78 - 177 of 177 Older
Project Member

Comment 78 by bugdroid1@chromium.org, Dec 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a9a959daa0aa8368df4b24febe22767a7b144437

commit a9a959daa0aa8368df4b24febe22767a7b144437
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Dec 12 09:45:26 2017

[LayoutNG] Implement visual overflow for NGPhysicalTextFragment

This patch implements all the rest of logic to compute visual
overflow for NGPhysicalTextFragment.

In doing so, this patch also refactors text-emphasis logic to
share with the pre-NG code.

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Ib800a9b4264dfe724d59fdb220e7c0d43513685a
Reviewed-on: https://chromium-review.googlesource.com/776638
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523386}
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/layout/line/InlineFlowBox.cpp
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/layout/ng/inline/ng_physical_text_fragment.cc
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/style/ComputedStyle.cpp
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/a9a959daa0aa8368df4b24febe22767a7b144437/third_party/WebKit/Source/core/style/ComputedStyleConstants.h

Project Member

Comment 79 by bugdroid1@chromium.org, Dec 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4c0f4e683b5d84feff46e08fd5aea933436555df

commit 4c0f4e683b5d84feff46e08fd5aea933436555df
Author: Emil A Eklund <eae@chromium.org>
Date: Fri Dec 15 05:28:40 2017

[LayoutNG] Expose block-type information for fragments

Expose whether a fragment has an associated layer on NGPhysicalFragment,
with the implementation defering to the LayoutObject. Aditionally expose
the type of block on NGPhysicalBoxFragment. Both are needed for painting
directly from the LayoutNG fragment tree as it affects the paint order.

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: I9f2d123acec104b1c61b9bd1297c49541713ac18
Reviewed-on: https://chromium-review.googlesource.com/827635
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524333}
[modify] https://crrev.com/4c0f4e683b5d84feff46e08fd5aea933436555df/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/4c0f4e683b5d84feff46e08fd5aea933436555df/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/4c0f4e683b5d84feff46e08fd5aea933436555df/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/4c0f4e683b5d84feff46e08fd5aea933436555df/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.h

Project Member

Comment 80 by bugdroid1@chromium.org, Dec 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/275b32518bcd6c058256448ea01fed1760403682

commit 275b32518bcd6c058256448ea01fed1760403682
Author: Emil A Eklund <eae@chromium.org>
Date: Fri Dec 15 05:37:26 2017

[LayoutNG] Change NGTextFragmentPainter::Paint signature

Change signature of the NGTextFragmentPainter::Paint method to match the
signature of other Paint methods, specifically by dropping document arg.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I9c752b2c7f56c333c76b1815f69c3691e490fdc7
Reviewed-on: https://chromium-review.googlesource.com/827632
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524336}
[modify] https://crrev.com/275b32518bcd6c058256448ea01fed1760403682/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/275b32518bcd6c058256448ea01fed1760403682/third_party/WebKit/Source/core/paint/ng/ng_text_fragment_painter.cc
[modify] https://crrev.com/275b32518bcd6c058256448ea01fed1760403682/third_party/WebKit/Source/core/paint/ng/ng_text_fragment_painter.h

Project Member

Comment 81 by bugdroid1@chromium.org, Dec 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/79cf4d479ac1af23c30418befeb739f7609cd064

commit 79cf4d479ac1af23c30418befeb739f7609cd064
Author: Koji Ishii <kojii@chromium.org>
Date: Mon Dec 18 10:05:36 2017

Imply SlimmingPaintV175 when LayoutNGPaintFragments is enabled

As suggested by chrishtr@ at:
https://groups.google.com/a/chromium.org/d/msg/layout-dev/O_D8ylaEyyE/wCiDNT8lCgAJ

Bug: 714962
Change-Id: Ic53ff4c3f492e8201c4582fe2c7e497ee6b10050
Reviewed-on: https://chromium-review.googlesource.com/821393
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524670}
[modify] https://crrev.com/79cf4d479ac1af23c30418befeb739f7609cd064/third_party/WebKit/Source/platform/runtime_enabled_features.json5

Project Member

Comment 82 by bugdroid1@chromium.org, Dec 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d

commit 6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Dec 19 09:12:40 2017

Revert "[LayoutNG] Implement visual overflow for NGPhysicalTextFragment"

This reverts commit a9a959daa0aa8368df4b24febe22767a7b144437.

Reason for revert: suspected to have caused 500kb malloc regression in issue 794562. Revert to see if the graph recovers.

Original change's description:
> [LayoutNG] Implement visual overflow for NGPhysicalTextFragment
> 
> This patch implements all the rest of logic to compute visual
> overflow for NGPhysicalTextFragment.
> 
> In doing so, this patch also refactors text-emphasis logic to
> share with the pre-NG code.
> 
> Bug: 636993, 714962
> Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
> Change-Id: Ib800a9b4264dfe724d59fdb220e7c0d43513685a
> Reviewed-on: https://chromium-review.googlesource.com/776638
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#523386}

TBR=eae@chromium.org,kojii@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 636993, 714962, 794562
Change-Id: If32419f36e4cf3075b82cc5b0cf6922081f98bec
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Reviewed-on: https://chromium-review.googlesource.com/833470
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524978}
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/layout/line/InlineFlowBox.cpp
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/layout/ng/inline/ng_physical_text_fragment.cc
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/style/ComputedStyle.cpp
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/6b7d01ca5b3b6d2dfb59dae04d29ec61cf1b480d/third_party/WebKit/Source/core/style/ComputedStyleConstants.h

Project Member

Comment 83 by bugdroid1@chromium.org, Dec 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fb1afea5c0bd461ba765f8363d38040f4a39aeae

commit fb1afea5c0bd461ba765f8363d38040f4a39aeae
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Dec 19 12:33:24 2017

[LayoutNG] Rebaseline fast/inline and fast/text after manual review

This patch rebaselines fast/inline and fast/text where rendering was
improved, or the new result is good alternative, by manual review.

TBR=eae@chromium.org
NOTRY=true

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Ice55c4a41b9488a61abf049e529e01adb439ac82
Reviewed-on: https://chromium-review.googlesource.com/832302
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525004}
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/break-between-nobr-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/drawStyledEmptyInlines-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/emptyInlinesWithinLists-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/inline-destroy-dirty-lines-crash-expected.txt
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/inline-width-containing-collapsed-whitespace-and-image-in-float-expected.txt
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/inline/out-of-flow-objects-and-whitespace-after-empty-inline-expected.txt
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/002-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/007-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/009-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/013-expected.png
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/015-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/basic/generic-family-changes-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/bidi-img-alt-text-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/bidi-isolate-nextlinebreak-failure-expected.txt
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/cg-fallback-bolding-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/color-emoji-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/drawBidiText-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/emoji-web-font-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/fake-italic-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/fallback-for-custom-font-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/font-initial-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/font-stretch-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/font-stretch-variant-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/002-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/bidi-CS-after-AN-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/bidi-innertext-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/bidi-listbox-atsui-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/bidi-mirror-he-ar-expected.png
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/combining-marks-position-expected.txt
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/complex-character-based-fallback-expected.png
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/danda-space-expected.png
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/plane2-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/unicode-bidi-plaintext-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/unicode-bidi-plaintext-line-wrap-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/international/vertical-text-glyph-test-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/justify-ideograph-complex-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/justify-ideograph-simple-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/selection/atsui-kerning-and-ligatures-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/selection/justified-selection-at-edge-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/selection/should-use-atsui-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/shaping/same-script-different-lang-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/sub-pixel/text-scaling-pixel-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/text-letter-spacing-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/wbr-styled-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/whitespace/028-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/whitespace/reattach-before-pseudo-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/whitespace/reattach-before-pseudo-nondistributed-whitespace-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/whitespace/reattach-before-pseudo-slot-fallback-whitespace-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/whitespace/reattach-slotted-whitespace-expected.png
[add] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/word-break-expected.png
[modify] https://crrev.com/fb1afea5c0bd461ba765f8363d38040f4a39aeae/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/word-break-soft-hyphen-expected.png

Project Member

Comment 84 by bugdroid1@chromium.org, Dec 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/73f441b68676fcbd296e59cb616f1aab8ffd0ae7

commit 73f441b68676fcbd296e59cb616f1aab8ffd0ae7
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Dec 22 08:38:21 2017

Reland "[LayoutNG] Implement visual overflow for NGPhysicalTextFragment"

This is a reland of a9a959daa0aa8368df4b24febe22767a7b144437

This was suspected to have caused a memory regression

Original change's description:
> [LayoutNG] Implement visual overflow for NGPhysicalTextFragment
>
> This patch implements all the rest of logic to compute visual
> overflow for NGPhysicalTextFragment.
>
> In doing so, this patch also refactors text-emphasis logic to
> share with the pre-NG code.
>
> Bug: 636993, 714962
> Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
> Change-Id: Ib800a9b4264dfe724d59fdb220e7c0d43513685a
> Reviewed-on: https://chromium-review.googlesource.com/776638
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#523386}

TBR=eae@chromium.org

Bug: 636993, 714962
Change-Id: Id6f8efa60fee6b1657338b34bdcc9f4502efc716
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Reviewed-on: https://chromium-review.googlesource.com/842324
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525956}
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/layout/line/InlineFlowBox.cpp
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/layout/ng/inline/ng_physical_text_fragment.cc
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/style/ComputedStyle.cpp
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/73f441b68676fcbd296e59cb616f1aab8ffd0ae7/third_party/WebKit/Source/core/style/ComputedStyleConstants.h

Project Member

Comment 85 by bugdroid1@chromium.org, Jan 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/11dcf1cd544b5383961d7f1977082c0ed0ea8bef

commit 11dcf1cd544b5383961d7f1977082c0ed0ea8bef
Author: Aleks Totic <atotic@chromium.org>
Date: Wed Jan 10 23:21:58 2018

[NGLayout] Paint scrollbars in NGBoxFragmentPainter

The scrollbars were not painting because NGBoxFragmentPainter::PaintOverflowControlsIfNeeded
was not implemented. I am not familiar with how we paint yet, so I copied some code from
BlockPainter, and now scrollers are drawn.

This makes scrollbars appear in following example:
<style>
.wrap
{
    display: block;
    height: 200px;
    width:100px;
    overflow:auto;
    border: 2px solid purple;
}
</style>
<div class="wrap">
This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. This is some text.
</div>

Changing the example to display:inline block makes scrollbars disappear again.
The cause isa different code path:

NGBoxFragmentPainter::PaintWithAdjustedOffset
   if (box_fragment_.PhysicalFragment().IsInlineBlock())
    return PaintInlineBlock(info, paint_offset);

and PaintInlineBlock() block does not paint scrollbars.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I6022ee03fa07b99f51e811f27e3af7f891d57597
Reviewed-on: https://chromium-review.googlesource.com/854690
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#528470}
[modify] https://crrev.com/11dcf1cd544b5383961d7f1977082c0ed0ea8bef/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/11dcf1cd544b5383961d7f1977082c0ed0ea8bef/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/11dcf1cd544b5383961d7f1977082c0ed0ea8bef/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Comment 86 by yosin@chromium.org, Jan 11 2018

Blockedon: 801076
Project Member

Comment 87 by bugdroid1@chromium.org, Jan 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3fa04c83b8143de9aae4ecc074ccd0716e7928ed

commit 3fa04c83b8143de9aae4ecc074ccd0716e7928ed
Author: Yoshifumi Inoue <yosin@chromium.org>
Date: Fri Jan 12 10:39:55 2018

[LayoutNG] Adapt LayoutText::Quads() to LayoutNG

This patch adapts |LayoutNG::Quads()| to LayoutNG.

This patch improves pass rates for "compositing/gestures/" as:
 * crash 33 -> 1
 * image 9 -> 31
 * pass 34 -> 44

No more crash at LinkHighlightImpl::ComputeHighlightLayerPathAndPosition().

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Iadb2d9cfd3eca784c8d716859f13bf945d5a52fe
Reviewed-on: https://chromium-review.googlesource.com/861599
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Yoichi Osato <yoichio@chromium.org>
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#528923}
[modify] https://crrev.com/3fa04c83b8143de9aae4ecc074ccd0716e7928ed/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/3fa04c83b8143de9aae4ecc074ccd0716e7928ed/third_party/WebKit/Source/core/layout/LayoutText.cpp
[modify] https://crrev.com/3fa04c83b8143de9aae4ecc074ccd0716e7928ed/third_party/WebKit/Source/core/layout/LayoutText.h
[modify] https://crrev.com/3fa04c83b8143de9aae4ecc074ccd0716e7928ed/third_party/WebKit/Source/core/layout/LayoutTextTest.cpp

Project Member

Comment 88 by bugdroid1@chromium.org, Jan 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/872e5350eaeb7ce754da4894770359d4617e43e5

commit 872e5350eaeb7ce754da4894770359d4617e43e5
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Jan 17 04:51:09 2018

[LayoutNG] Implement box clipper for Paint NG

This patch implements BoxClipper for NGPaintFragment.

With Slimming Paint v175, BoxClipper delegates its work to
ScopedPaintChunkProperties. The code to instantiate it is moved to
a new class BoxClipperBase to share between non-NG and NG painters.

This patch also implements drawing background for inline boxes
by calling PaintBoxDecorationBackground() for inline boxes.

The call sequence of NGBoxClipper probably need be revised, but
after our paint phase cleanup was done, and we determine how we
differentiate inline and block box paint phases.

This patch fixes 81 tests, and regresses 18 tests. Regressions
include 10 paint DCHECK failure due to some incorrect caching, and
8 image failures where clipping is still incorrect. They will be
tracked in following patches.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I8ed2c541fcfc3fecd04e39e0b0af168af2262008
Reviewed-on: https://chromium-review.googlesource.com/861378
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529615}
[delete] https://crrev.com/230fa45ee2d6573b32ff4b0790620faa1e7bce60/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/block/float/shrink-to-avoid-float-complexity-expected.png
[delete] https://crrev.com/230fa45ee2d6573b32ff4b0790620faa1e7bce60/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/block/float/shrink-to-avoid-float-complexity-expected.png
[delete] https://crrev.com/230fa45ee2d6573b32ff4b0790620faa1e7bce60/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/001-expected.png
[delete] https://crrev.com/230fa45ee2d6573b32ff4b0790620faa1e7bce60/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/margin-collapse/block-inside-inline/001-expected.png
[modify] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/BUILD.gn
[modify] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/BoxClipper.cpp
[modify] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/BoxClipper.h
[add] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/BoxClipperBase.cpp
[add] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/BoxClipperBase.h
[add] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/ng/ng_box_clipper.cc
[add] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/ng/ng_box_clipper.h
[modify] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/872e5350eaeb7ce754da4894770359d4617e43e5/third_party/WebKit/Source/core/paint/ng/ng_text_fragment_painter_test.cc

Project Member

Comment 89 by bugdroid1@chromium.org, Jan 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cac69d9a9e98daac9d49e4effc3856d41a2ee93b

commit cac69d9a9e98daac9d49e4effc3856d41a2ee93b
Author: Emil A Eklund <eae@chromium.org>
Date: Fri Jan 19 22:44:37 2018

[LayoutNG] Add rudimental scroll support to NGBoxFragmentPainter

Based on the existing Slimming Paint 1.75 implementation in BoxPainter.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Iab68c32f6f681b6775e07b0a10d960dbd0be3aaa
Reviewed-on: https://chromium-review.googlesource.com/875149
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530639}
[modify] https://crrev.com/cac69d9a9e98daac9d49e4effc3856d41a2ee93b/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 90 by bugdroid1@chromium.org, Jan 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a805e7a83cd286d08cb113ad60940e060905311a

commit a805e7a83cd286d08cb113ad60940e060905311a
Author: Koji Ishii <kojii@chromium.org>
Date: Mon Jan 22 18:50:06 2018

[LayoutNG] Implement padding in NGPaint

NGPaint needs padding, but computing padding requires constraint
space which is not available at paint phase.

This patch adds computed padding to NGPhysicalBoxFragment so that
NGPaint can use it.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I2d0c1d0115df5ff4fb5dd6c088f778cd13ffc34a
Reviewed-on: https://chromium-review.googlesource.com/878561
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530924}
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_box_state.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_box_state.h
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_item_result.h
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/inline/ng_line_breaker.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/layout_ng_block_flow.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_block_node.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_column_layout_algorithm.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_fragment_builder.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_fragment_builder.h
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_page_layout_algorithm.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/a805e7a83cd286d08cb113ad60940e060905311a/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Comment 91 by yosin@chromium.org, Jan 24 2018

Blockedon: 805301
Project Member

Comment 92 by bugdroid1@chromium.org, Jan 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2

commit c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Jan 24 21:01:27 2018

[LayoutNG] Fix VisualRect for inline fragments

This patch fixes NGPaintFragment::VisualRect for inline fragments.
Incorrect VisualRect causes parts of fragments not being painted.

Inline boxes with 'position: relative' is still incorrect. This
patch includes tests, but disabled for now. The fix involes other
parts of the code that it will be in a separate patch.

22 failures turn to pass.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ib101051642f1c4b91d8b13df0822bf55e1481c1b
Reviewed-on: https://chromium-review.googlesource.com/882789
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531681}
[modify] https://crrev.com/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.h
[add] https://crrev.com/c074d0bd1e3223703f3239c5a2dab8b0ecdce9a2/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment_test.cc

Comment 93 by yosin@chromium.org, Jan 25 2018

Blockedon: 805784
Project Member

Comment 94 by bugdroid1@chromium.org, Jan 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dd9f5030ff04b33707cc2e94952db450dae9c814

commit dd9f5030ff04b33707cc2e94952db450dae9c814
Author: Yoshifumi Inoue <yosin@chromium.org>
Date: Thu Jan 25 09:00:38 2018

Make LayoutObject::EnclosingBlockFlowFragment() strict

This patch changes |LayoutObject::EnclosingBlockFlowFragment()| to strict by
using |ChildrenInline()| instead of |HasNGInlineNodeData()| for detecting
failures of layout operation which doesn't compute inline node data.

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Bug: 714962
Change-Id: I14e724e06247c59e2f80a8a4db7dc1ef6e5433c7
Reviewed-on: https://chromium-review.googlesource.com/885542
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531854}
[modify] https://crrev.com/dd9f5030ff04b33707cc2e94952db450dae9c814/third_party/WebKit/Source/core/layout/LayoutObject.cpp

Project Member

Comment 95 by bugdroid1@chromium.org, Jan 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/302e6c7c0ff0e97bb3f5ba7e6bd311197319584e

commit 302e6c7c0ff0e97bb3f5ba7e6bd311197319584e
Author: Yoshifumi Inoue <yosin@chromium.org>
Date: Thu Jan 25 09:58:08 2018

[LayoutNG] Change how content editable forces legacy layout

This patch changes how editing forces legacy layout to the one
added for form controls[1] to use legacy layout tree for nested editable, e.g.
  <div contenteditable>
  legacy layout tree
    <div contenteditable=false>
      non-editable block in editable block should be legacy
    </div>
  </div>

This patch continues http://crrev.com/c/880542

[1] http://crrev.com/c/875511 Change form controls not to use LayoutNG

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: I78d44fc82b3de5e647b67ee6aa7733db62e344b8
Reviewed-on: https://chromium-review.googlesource.com/880530
Commit-Queue: Yoshifumi Inoue <yosin@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531861}
[modify] https://crrev.com/302e6c7c0ff0e97bb3f5ba7e6bd311197319584e/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/302e6c7c0ff0e97bb3f5ba7e6bd311197319584e/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
[modify] https://crrev.com/302e6c7c0ff0e97bb3f5ba7e6bd311197319584e/third_party/WebKit/Source/core/editing/LayoutSelectionTest.cpp
[modify] https://crrev.com/302e6c7c0ff0e97bb3f5ba7e6bd311197319584e/third_party/WebKit/Source/core/layout/LayoutObject.cpp

Project Member

Comment 96 by bugdroid1@chromium.org, Jan 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/77aa1ef89343c37e112ee60bd97edddedc584b80

commit 77aa1ef89343c37e112ee60bd97edddedc584b80
Author: Koji Ishii <kojii@chromium.org>
Date: Sat Jan 27 01:36:30 2018

[LayoutNG] Implement overline

This patch implements computing positions of overlines and
'text-underline-position: under' underlines.

Computing consistent positions across boxes within a same decoration
box is not implemented in this patch.

In doing so, the code to computing font vertical position is moved to
SimpleFontData.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I27b471db76ae0c94b7cc01ce2eb9084fa06ff29b
Reviewed-on: https://chromium-review.googlesource.com/886283
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532118}
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/BUILD.gn
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/TextDecorationOffset.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/TextDecorationOffset.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/TextDecorationOffsetBase.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/TextDecorationOffsetBase.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/line/InlineBox.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/line/InlineFlowBox.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/line/InlineFlowBox.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/line/InlineTextBox.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/ng/inline/ng_physical_text_fragment.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/ng/ng_text_decoration_offset.cc
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/layout/ng/ng_text_decoration_offset.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/core/paint/TextPainterBase.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/platform/BUILD.gn
[rename] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/platform/fonts/FontVerticalPositionType.h
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/platform/fonts/SimpleFontData.cpp
[modify] https://crrev.com/77aa1ef89343c37e112ee60bd97edddedc584b80/third_party/WebKit/Source/platform/fonts/SimpleFontData.h

Project Member

Comment 97 by bugdroid1@chromium.org, Jan 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/087318f1b0d21f74b27feb108da267b13197f089

commit 087318f1b0d21f74b27feb108da267b13197f089
Author: Aleks Totic <atotic@chromium.org>
Date: Sun Jan 28 08:09:23 2018

LayoutNG inline outline initial implementation

I think that this patch is a good starting point for outline implementation.
It implements a basic outline painting algorithm:
- Outlines are painted by containing self painting fragment.
- Outlines are computed as:
   traverse fragment's descendants
   combine outlines for fragments with common layout objects
   paint combined outlines, using first fragment as DisplayItem

There are many problems:
- All descendant fragments are traversed for each outline paint, even if
  there are no outlines to be painted.
  Fix: detect outline existence while descendants are being painted,
  and only call this code if there are outlines.

There are 119 tests in our test suite that trigger inline outline paint code.
With this patch, we get 4 regressions:
fast/history/visited-link-hover-outline-color.html
paint/invalidation/overflow/inline-block-overflow-repaint.html
paint/invalidation/overflow/inline-box-overflow-repaint.html
  cause: improper invalidation
fast/inline/nested-text-descendants.html
  cause: inline text position

15 additional tests pass.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Icccd225abac7e38fd9a871ee2914ff8d235474e3
Reviewed-on: https://chromium-review.googlesource.com/887633
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532270}
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/BUILD.gn
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.h
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_fragment_painter.cc
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_fragment_painter.h
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.h
[add] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment_traversal.cc
[add] https://crrev.com/087318f1b0d21f74b27feb108da267b13197f089/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment_traversal.h

Project Member

Comment 98 by bugdroid1@chromium.org, Jan 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7881e321e07a43bf6998aca3149f01bdffd23a17

commit 7881e321e07a43bf6998aca3149f01bdffd23a17
Author: Koji Ishii <kojii@chromium.org>
Date: Mon Jan 29 19:18:23 2018

[LayoutNG] Add IsInlineBox and IsInline to NGPhysicalFragment

This patch adds IsInlineBox() and IsInline() to NGPhysicalFragment
as we need claer distinction of inline boxes in NGPaint.

Also anonymous fragment was removed. This fragment type was used
to create an anonymous fragment for inline children, where two
fragments are generated for one LayoutBlockFlow.  This was changed
to create line boxes directly under the parent box fragment in
line-by-line refactoring by ikilpatrick@.

One crash was upgraded to failure because the logic to determine
anonymous fragment was wrong when ::first-line was used, and now
it is gone.

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Iac918830f1696789008376e77d36557e373236f8
Reviewed-on: https://chromium-review.googlesource.com/890878
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532531}
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_box_state.cc
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/Source/core/layout/ng/ng_fragment_builder.cc
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/7881e321e07a43bf6998aca3149f01bdffd23a17/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.h

Project Member

Comment 99 by bugdroid1@chromium.org, Feb 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a

commit 05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a
Author: Emil A Eklund <eae@chromium.org>
Date: Thu Feb 01 04:23:12 2018

[LayoutNG] Implement block-flow, inline, and float paint order

Change NGBoxFragmentPainter to implement correct paint order for inline,
block-flow, and floating children. All paint offsets are now computed in
in the appropiate paint methods, removing the need for the is_inline and
block_paint_offset_ fields.

Bug: 714962
Test: fast/inline, fast/inline-block, fast/block

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I04cf6cd0d7d1f675fc310b966d41ad89d42d5852
Reviewed-on: https://chromium-review.googlesource.com/874607
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533557}
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/021-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/intruding-float-add-in-sibling-block-on-static-position-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/intruding-float-add-in-sibling-block-on-static-position2-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/overhanging-float-add-in-static-position-block-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/overhanging-float-add-in-static-position-block2-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/overhanging-float-remove-from-absolute-position-block-expected.png
[delete] https://crrev.com/9068f9437641ee49ca25b9cfb367f8edba6de9fe/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/block/float/overhanging-float-remove-from-absolute-position-block2-expected.png
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/Source/core/layout/LayoutInline.cpp
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.h
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.h
[modify] https://crrev.com/05bd92e1f704fbf45e234a57f4d0c8e6247e9b2a/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc

Project Member

Comment 100 by bugdroid1@chromium.org, Feb 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/31fffd777ed53196263ff1337fd51fe9e4db53ca

commit 31fffd777ed53196263ff1337fd51fe9e4db53ca
Author: Emil A Eklund <eae@chromium.org>
Date: Thu Feb 01 20:34:01 2018

[LayoutNG] Add PhysicalFragment convenience method to box painter

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ie0c8fe0bcc6f84284b60c2843c93ae6d5c63e1da
Reviewed-on: https://chromium-review.googlesource.com/897983
Commit-Queue: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533801}
[modify] https://crrev.com/31fffd777ed53196263ff1337fd51fe9e4db53ca/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/31fffd777ed53196263ff1337fd51fe9e4db53ca/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.h

Project Member

Comment 101 by bugdroid1@chromium.org, Feb 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4da35b98cfee04eae6c9f2e6fe529ff743bb7f0b

commit 4da35b98cfee04eae6c9f2e6fe529ff743bb7f0b
Author: Koji Ishii <kojii@chromium.org>
Date: Mon Feb 05 17:14:46 2018

[LayoutNG] Fix InlineFragmentsFor for atomic inlines

This patch fixes InlineFragmentsFor returns empty for atomic inlines.

|EnclosingNGBlockFlow| returns itself when the given LayoutObject is
an atomic inline. NGPaintFragment::GetForInline() computes the paint
fragment for the inline formatting context the given LayoutObject
belongs to.

Tests added for the inline block case. This is part of the fix for
VisualRect, and the result VisualRect is still incorrect. That part
of the test is disabled in this CL.

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I473a1bcab040492486cd90dec9d87cb6ce8f024f
Reviewed-on: https://chromium-review.googlesource.com/900568
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534404}
[modify] https://crrev.com/4da35b98cfee04eae6c9f2e6fe529ff743bb7f0b/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/4da35b98cfee04eae6c9f2e6fe529ff743bb7f0b/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.h
[modify] https://crrev.com/4da35b98cfee04eae6c9f2e6fe529ff743bb7f0b/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment_test.cc

Project Member

Comment 102 by bugdroid1@chromium.org, Feb 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c39fc9a4f198f2a986338f5dd01e93f581c0a94b

commit c39fc9a4f198f2a986338f5dd01e93f581c0a94b
Author: Emil A Eklund <eae@chromium.org>
Date: Tue Feb 06 05:30:39 2018

[LayoutNG] Fix box-shadow/border-radius for multi-line inline

Fix painting of box-shadow when combined with border-radius for multiple
line inlines. The radius should only apply to the start- and end- edges.

Test: fast/borders/border-radius-split-inline.html
Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I46fcc1c0a0fb272b69c8699f3cb90314b267fd2b
Reviewed-on: https://chromium-review.googlesource.com/902780
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#534636}
[modify] https://crrev.com/c39fc9a4f198f2a986338f5dd01e93f581c0a94b/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 103 by bugdroid1@chromium.org, Feb 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1f269b455324e1bf14531b29bdcd288305e4d461

commit 1f269b455324e1bf14531b29bdcd288305e4d461
Author: Aleks Totic <atotic@chromium.org>
Date: Wed Feb 07 17:47:11 2018

[LayoutNG] Paint inline outlines within containing block DisplayItem

My initial implementation of inline outline PaintNG painted used
first inline NGPaintFragment fragment as DisplayItem for DrawingRecorder.

This was wrong, failing test was
fast/borders/outline-alpha-inline.html

Compositor uses DisplayItem VisualRect to decide which items to
paint, and inline NGPaintFragment's VisualRect does not contain
the entire outline paint area.

The fix is to use ContainingBlock's NGPaintFragment for
DrawingRecorder. Fix has 2 parts:

1. Move DrawingRecorder outside of ObjectPainterBase.
2. Modifiy ng_fragment_painter to use containing block for DrawingRecorder.

fast/borders/outline-alpha-inline.html still fails, but has improved.

The remaining problem is that containing block does not contain
inline children's outlines. This might be fixed with kojii's VisualRect
patch.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ife4440547470ef9af0e312ac4ded51e55940b25b
Reviewed-on: https://chromium-review.googlesource.com/898208
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535048}
[modify] https://crrev.com/1f269b455324e1bf14531b29bdcd288305e4d461/third_party/WebKit/Source/core/paint/ObjectPainter.cpp
[modify] https://crrev.com/1f269b455324e1bf14531b29bdcd288305e4d461/third_party/WebKit/Source/core/paint/ObjectPainterBase.cpp
[modify] https://crrev.com/1f269b455324e1bf14531b29bdcd288305e4d461/third_party/WebKit/Source/core/paint/ObjectPainterBase.h
[modify] https://crrev.com/1f269b455324e1bf14531b29bdcd288305e4d461/third_party/WebKit/Source/core/paint/ng/ng_fragment_painter.cc

Project Member

Comment 104 by bugdroid1@chromium.org, Feb 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/969629ee48df8a49492340b3ee1cc2386ea2abb0

commit 969629ee48df8a49492340b3ee1cc2386ea2abb0
Author: Emil A Eklund <eae@chromium.org>
Date: Thu Feb 08 03:57:59 2018

[LayoutNG] Implement mask painting

Implement support for mask image painting by moving PaintMaskImages from
BoxPainter to BoxPainterBase and breaking dependencies on legacy layout.
The new NGBoxFragmentPainter::PaintMask method computes the geometry and
rect then in turn calls the shared BoxPainterBase::PaintMaskImages impl.

Note that until paint invalidation is implemented for fragments elements
using image masks won't be painted on first paint unless all images have
been loaded already. Once paint is re-triggered (after layout) they are.

Bug: 714962
Test: fast/borders/block-mask-overlay-image.html
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I24274c2c771a7cd0d113f20a72876184277b401f
Reviewed-on: https://chromium-review.googlesource.com/907676
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535294}
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.h
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/paint/BoxModelObjectPainter.cpp
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/paint/BoxPainter.cpp
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/paint/BoxPainterBase.cpp
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/paint/BoxPainterBase.h
[modify] https://crrev.com/969629ee48df8a49492340b3ee1cc2386ea2abb0/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 105 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0

commit a631d7b7abdf46fd8c24a781a3088bd7f6c722b0
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Feb 09 04:10:39 2018

[LayoutNG] Stop using LayoutObject for box visual overflow

This resolves a TODO item in NGPhysicalBoxFragment::SelfVisualRect()
where it used LayoutBox::ComputeVisualEffectOverflowOutsets() to
compute visual overflow of the box.

This wasn't correct for outline, because functions it calls
(AddOutlineRects() and Size()) do not work for LayoutNG, especially
before we copy the layout result back to LayoutObject tree.

The new code:
* Shares the code for box decorations with LayoutBox by moving it
  to ComputedStyle.
* Moved AddSelfOutlineRects() from NGPaintFragment and use it to
  compute visual overflow, though, it's still not implemented
  correctly yet.

Note that when I changed CL:899622 to call SelfVisualOverflow
(and thus LayoutBox::ComputeVisualEffectOverflowOutsets), it hit a
DCHECK failure saying NGPhysicalFragment::Style() has
HasVisualOverflowingEffect() while its LayoutObject doesn't have.
This is probably because outline changes are paint effect in legacy
and that we only invalidate paint, but LayoutNG does not have a way
to paint using updated style without doing re-layout, because the
style is captured in NGPhysicalFragment.

We might need to either 1) invalidate layout instead in LayoutNG,
or 2) have a mechanism to use updated ComputedStyle for paint-
related operations such as visual overflow. I haven't come up with
a good conclusion on this yet.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I451f39ce60327e103f551b91b18c8529d856b533
Reviewed-on: https://chromium-review.googlesource.com/908588
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535629}
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/style/ComputedStyle.cpp
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/platform/geometry/LayoutRect.h
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/platform/geometry/LayoutRectOutsets.cpp
[modify] https://crrev.com/a631d7b7abdf46fd8c24a781a3088bd7f6c722b0/third_party/WebKit/Source/platform/geometry/LayoutRectOutsets.h

Project Member

Comment 106 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/916448fc4b72ff26ac71f97bf51e412990344be7

commit 916448fc4b72ff26ac71f97bf51e412990344be7
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Feb 09 17:23:45 2018

[LayoutNG] Fix VisualRect for inline block, relative position, etc.

This patch fixes VisualRect for NGPaintFragment in:
1. When line wraps (and that block offset is not zero,)
   VisualRect were often incorrect. This was fixed, and
   added to NGPaintFragmentTest.
2. Inline block and when 'position: relative' is applied.
   NGPaintFragmentTest that were disabled are now enabled.
3. This patch moves the most of the compute logic to
   PaintInvalidator::UpdateVisualRect(). chrishtr@ wanted to
   compute here in the original CL review but I couldn't manage
   it to work at that point.

52 tests pass, and 34 regressions. Remaining work are:
1. Multi-col and writing-modes are not supported yet. Some of
   these were working somehow and most of regressions are for
   these two features.
2. Computing VisualRect for line boxes still needs post-process
   after traversal. I haven't come up with a good way to solve
   this yet.
3. It turns out that we need to do full paint invalidation (or
   at least re-compute VisualRect and offset) for each layout,
   because NGPaintFragments are re-created. This may need to
   revisit for optimizations.
4. There are still some cases where we skip computing VisualRect.
   These are to be investigated in following patches.
5. Some of regressions were unexpected; there should be something
   that I'm not aware of yet. These are to be investigated further:
 fast/css/tab-size-complex-path.html
 fast/css/tab-size.html
 fast/text/midword-break-hang.html
 fast/text/shadow-no-blur.html
 fast/text/text-letter-spacing.html
 fast/text/international/rtl-negative-letter-spacing.html

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I27fd5026b75cb8a7fe8fa0ebed7397618f1e4606
Reviewed-on: https://chromium-review.googlesource.com/899622
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535739}
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/layout/ng/geometry/ng_physical_offset.cc
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/layout/ng/geometry/ng_physical_offset.h
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/layout/ng/layout_ng_mixin.cc
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/paint/PaintInvalidator.cpp
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/paint/PrePaintTreeWalk.cpp
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment.h
[modify] https://crrev.com/916448fc4b72ff26ac71f97bf51e412990344be7/third_party/WebKit/Source/core/paint/ng/ng_paint_fragment_test.cc

Project Member

Comment 107 by bugdroid1@chromium.org, Feb 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bf0bf643413ae72d5e49a56698544e7f2cbafc01

commit bf0bf643413ae72d5e49a56698544e7f2cbafc01
Author: Emil A Eklund <eae@chromium.org>
Date: Mon Feb 12 21:09:37 2018

[LayoutNG] Implement support for text clip masks

Add support for text clip mask painting through the NGBoxFragmentPainter
PaintTextClipMask method. Also change PaintTextChild to handle TextClip.

Does not yet support box-decoration-break: slice for block flow elements
and as such gets the offset wrong if the property is used on block flow.

Bug: 714962
Test: fast/backgrounds/background-clip-text-with-blend-mode.html, fast/hidpi/clip-text-in-hidpi.html
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: If0f3fb67adf8e87dddc21c669f331856d934eb6e
Reviewed-on: https://chromium-review.googlesource.com/911825
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536187}
[modify] https://crrev.com/bf0bf643413ae72d5e49a56698544e7f2cbafc01/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/bf0bf643413ae72d5e49a56698544e7f2cbafc01/third_party/WebKit/Source/core/layout/ng/geometry/ng_physical_offset.cc
[modify] https://crrev.com/bf0bf643413ae72d5e49a56698544e7f2cbafc01/third_party/WebKit/Source/core/layout/ng/geometry/ng_physical_offset.h
[modify] https://crrev.com/bf0bf643413ae72d5e49a56698544e7f2cbafc01/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 108 by bugdroid1@chromium.org, Feb 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/033fa13912a0236b9a0d76321e754b1cdb5a7258

commit 033fa13912a0236b9a0d76321e754b1cdb5a7258
Author: Emil A Eklund <eae@chromium.org>
Date: Tue Feb 13 20:50:25 2018

[LayoutNG] Remove unused NGInlineNode::GetLayoutTextOffsets method

Remove the NGInlineNode::GetLayoutTextOffsets method as it was only used
by the code that copied fragment results over to the legacy layout tree.

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: I02745c4fa532535cb6595061f86ecb3d0d814e64
Reviewed-on: https://chromium-review.googlesource.com/916725
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536464}
[modify] https://crrev.com/033fa13912a0236b9a0d76321e754b1cdb5a7258/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_node.cc
[modify] https://crrev.com/033fa13912a0236b9a0d76321e754b1cdb5a7258/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_node.h

Project Member

Comment 109 by bugdroid1@chromium.org, Feb 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/923df831a9fb96d15358acae4420782f4149dec7

commit 923df831a9fb96d15358acae4420782f4149dec7
Author: Emil A Eklund <eae@chromium.org>
Date: Wed Feb 14 02:16:16 2018

[LayoutNG] Implement hit testing for rounded borders

Add support for hit testing content beneath clipped out rounded borders.
Also breaks dependency on LayoutObject in PaintOverflowControlsIfNeeded.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I4a8e9c4993df97569bf67c173aa9915f586e1ff0
Reviewed-on: https://chromium-review.googlesource.com/917190
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536612}
[modify] https://crrev.com/923df831a9fb96d15358acae4420782f4149dec7/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/923df831a9fb96d15358acae4420782f4149dec7/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.h

Project Member

Comment 110 by bugdroid1@chromium.org, Feb 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c03f9102d3554fb9a260d454d4335ab7360b7326

commit c03f9102d3554fb9a260d454d4335ab7360b7326
Author: Aleks Totic <atotic@chromium.org>
Date: Sat Feb 17 01:42:36 2018

[LayoutNG] Implement minimum size for HTML/BODY in quirks mode.

Implements
https://quirks.spec.whatwg.org/#the-html-element-fills-the-viewport-quirk
It computes percentage resolution size, and minimum size for HTML/BODY.

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Ie8cd0ed44df10e753d8658bbe3f4a253d9d4c9f4
Reviewed-on: https://chromium-review.googlesource.com/912609
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537501}
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_color_inline-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_style_inline-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/classification/list_style_position-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/color_and_background/background_color-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/20110323/inline-table-001-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/font-feature-settings-rendering-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/6476-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/caret-and-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/click-start-of-line-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/contains-boundaries-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/drag-to-contenteditable-iframe-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/leave-requested-block-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/mixed-editability-6-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/previous-line-position-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/selectNode-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/selectNodeContents-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/selection-background-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/unsupported-content/list-delete-003-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/unsupported-content/list-type-after-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/unsupported-content/list-type-before-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/unsupported-content/table-delete-001-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/unsupported-content/table-delete-003-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dom/Element/class-attribute-whitespace-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/anonymous-block-orphaned-lines-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/006-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/button-text-transform-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/color/input-appearance-color-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/image/image-alt-text-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/placeholder-position-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/plaintext-mode-2-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/range/slider-thumb-shared-style-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/listbox-scrollbar-incremental-load-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/menulist-appearance-none-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/menulist-option-wrap-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/option-script-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/option-strip-whitespace-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-change-listbox-size-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-disabled-appearance-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-display-none-style-resolve-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-item-background-clip-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-writing-direction-natural-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/targeted-frame-submission-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/text/input-appearance-focus-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/text/textfield-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/textarea/basic-textareas-quirks-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/layers/inline-dirty-z-order-lists-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/hdr/color-jpeg-with-color-profile-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/hdr/video-canvas-alpha-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-circle-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-focus-ring-outline-color-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-focus-ring-zero-outline-width-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-focus-ring-zoom-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-overflowing-circle-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-overflowing-polygon-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/images/imagemap-polygon-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-circle-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-focus-ring-outline-color-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-focus-ring-zero-outline-width-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-focus-ring-zoom-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-overflowing-circle-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-overflowing-polygon-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/virtual/gpu-rasterization/images/imagemap-polygon-focus-ring-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/001-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-2-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/25277-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/001-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-2-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/25277-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/001-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-2-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/25277-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-padding-disables-text-quirk-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/inline-text-quirk-bpm-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng/fast/inline/nested-top-alignment-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/inline/absolute-positioned-block-in-centred-block-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/writing-mode/inline-direction-positioning-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/LayoutTests/virtual/layout_ng/fast/writing-mode/margin-collapse-expected.txt
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.h
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/Source/core/layout/ng/ng_layout_input_node.cc
[modify] https://crrev.com/c03f9102d3554fb9a260d454d4335ab7360b7326/third_party/WebKit/Source/core/layout/ng/ng_layout_input_node.h

Project Member

Comment 111 by bugdroid1@chromium.org, Feb 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dbc50e67a21af2f93c5d5a670cffb362d437db93

commit dbc50e67a21af2f93c5d5a670cffb362d437db93
Author: Xiaocheng Hu <xiaochengh@chromium.org>
Date: Mon Feb 26 03:33:59 2018

[LayoutNG] Fix double offset addition in LayoutInline::LinesBoundingBox

LayoutInline::LinesBoundingBox() adds the child fragment's offset twice
when calculate the child's rect. This patch fixes it.

We also have some NG baselines with incorrect rects of inline elements
in the layout tree dump due to the bug. This patch correct the baselines.

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Icddd3e20c99ef876c0deed4ec95aac10765f52fe
Reviewed-on: https://chromium-review.googlesource.com/935830
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539064}
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_color_inline-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_style_inline-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/classification/display-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/classification/list_style_position-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/formatting_model/inline_elements-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/units/length_units-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t0805-c5516-ibrdr-c-00-a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t0805-c5517-ibrdr-s-00-a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t090501-c414-flt-ln-00-d-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t090501-c414-flt-ln-02-d-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t090501-c414-flt-ln-03-d-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1202-counter-08-b-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1202-counters-13-b-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1202-counters-14-b-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t120401-scope-00-b-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1602-c546-txt-align-00-b-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-18a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-21-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-42-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-42a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-66-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-18a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-21-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-42-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-42a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-66-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-18a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-21-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-42-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-42a-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-66-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/click-start-of-line-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/editing/selection/contains-boundaries-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/bidi-override-in-anonymous-block-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dom/Element/class-attribute-whitespace-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/anonymous-block-orphaned-lines-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/button-text-transform-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/form-element-geometry-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/plaintext-mode-2-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/range/slider-thumb-shared-style-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/listbox-scrollbar-incremental-load-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/menulist-appearance-none-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/menulist-option-wrap-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-change-listbox-size-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-disabled-appearance-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-display-none-style-resolve-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-item-background-clip-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/forms/select/select-writing-direction-natural-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/layers/inline-dirty-z-order-lists-expected.txt
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/Source/core/layout/LayoutInline.cpp
[modify] https://crrev.com/dbc50e67a21af2f93c5d5a670cffb362d437db93/third_party/WebKit/Source/core/layout/LayoutInlineTest.cpp

Project Member

Comment 112 by bugdroid1@chromium.org, Mar 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1

commit 99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1
Author: Emil A Eklund <eae@chromium.org>
Date: Fri Mar 02 02:06:46 2018

[LayoutNG] Remove NGPhysicalTextFragment item_index and expansion

Remove the expansion and item_index fields as they are superfluous given
the removal of the code path copying LayoutNG inline layout results over
to the legacy BidiRun/TextRun layout tree structure in lieu of painting.

Also updates the NGInlineNodeTest.CreateLineBidiIsolate test, the single
remaining use case for item_index, to no longer use the index. Fragments
are text direction agnostic and as such there is no need to test for it.

Bug: 714962
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: I606db581ca2c1c5ae3a2a03c0f923ca8e1508462
Reviewed-on: https://chromium-review.googlesource.com/944662
Commit-Queue: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#540413}
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_item_result.h
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_layout_algorithm.cc
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_node_test.cc
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_physical_text_fragment.h
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_text_fragment_builder.cc
[modify] https://crrev.com/99c64fdcca51d79babb9ea3f0d0ff67739fbdcf1/third_party/WebKit/Source/core/layout/ng/inline/ng_text_fragment_builder.h

Project Member

Comment 113 by bugdroid1@chromium.org, Mar 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/501ee9e06b24a8031a069a7bb57d11681d58550f

commit 501ee9e06b24a8031a069a7bb57d11681d58550f
Author: Koji Ishii <kojii@chromium.org>
Date: Sat Mar 17 05:07:10 2018

[LayoutNG] Fix AdjustPaintOffsetScope for flipped block (vertical-rl)

BlockPainter::PaintChild() calls LayoutBox::FlipForWritingModeForChild()
which subtracts X() twice, so that child painter can add flipped block
physical offset. Because LayoutNG does not apply flipped block to its
Offset(), this resuts in incorrect paint offsets.

I think ideally paint should be able to handle without flipped block
throughout all painters, but I don't have enough knowledge to switch
to, or to add, such a mode to all painters at this point.

This patch matches NGBoxFragmentPainter's semantics to existing
painters for flipped block physical coordinate.

~120 tests pass, ~10 new failures, but remaining failures indicate
that paint offset needs more fixes. The semantics for floats, abspos,
tables, etc. are not clear yet to me.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I35857fff030452dc618a529a5c45169e6fac378b
Reviewed-on: https://chromium-review.googlesource.com/966047
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543929}
[modify] https://crrev.com/501ee9e06b24a8031a069a7bb57d11681d58550f/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/501ee9e06b24a8031a069a7bb57d11681d58550f/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/501ee9e06b24a8031a069a7bb57d11681d58550f/third_party/WebKit/Source/core/paint/AdjustPaintOffsetScope.h

Project Member

Comment 115 by bugdroid1@chromium.org, Mar 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b41f5b79d6b0912c83ce8f042b9d52472cd18c77

commit b41f5b79d6b0912c83ce8f042b9d52472cd18c77
Author: Aleks Totic <atotic@chromium.org>
Date: Wed Mar 28 22:58:46 2018

[LayoutNG] remove LayoutNGPaintFragments from builders

Prevents spurions stderr lines like this:
[runtime_enabled_features.cc(1501)] RuntimeEnabledFeature not recognized: LayoutNGPaintFragments]

Bug: 714962
Change-Id: I0d4e8c46b9cbb80f1cb6bfafa42e364a0c1b2e22
Reviewed-on: https://chromium-review.googlesource.com/984297
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Quinten Yearsley <qyearsley@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546644}
[modify] https://crrev.com/b41f5b79d6b0912c83ce8f042b9d52472cd18c77/testing/buildbot/chromium.fyi.json
[modify] https://crrev.com/b41f5b79d6b0912c83ce8f042b9d52472cd18c77/testing/buildbot/test_suite_exceptions.pyl

Project Member

Comment 116 by bugdroid1@chromium.org, Mar 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26d68c9716eb3b9edf7b9952226096e623468578

commit 26d68c9716eb3b9edf7b9952226096e623468578
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Mar 29 21:57:44 2018

[LayoutNG] Fix inline fragmentation of inset box shadow

This patch gives the inline fragmentation edges to
PaintInsetBoxShadowWithBorderRect().

PaintNormalBoxShadow() was fixed in the same way in CL:902780.

This patch almost fixes following tests, but still images do not
match due to pixel differences in round borders.
  fast/box-shadow/inset-subpixel.html
  fast/box-shadow/inset.html

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ic9a026c33941a2ad493e124c9080e5eee4af25db
Reviewed-on: https://chromium-review.googlesource.com/986772
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546972}
[modify] https://crrev.com/26d68c9716eb3b9edf7b9952226096e623468578/third_party/WebKit/Source/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 117 by bugdroid1@chromium.org, Apr 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c432775b685a52d429bb6004fb7bce08dbc3d686

commit c432775b685a52d429bb6004fb7bce08dbc3d686
Author: Aleks Totic <atotic@chromium.org>
Date: Wed Apr 25 21:14:26 2018

[LayoutNG] Initialize bleed_avoidance for paintng

Many existing rebaselined tests had to be rebaselined again
because borders looked different.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ia4114b66e322550b1a8dc5fc96568071d50a951e
Reviewed-on: https://chromium-review.googlesource.com/1027073
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553746}
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_style-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/box_properties/border_style_inline-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t0805-c5517-brdr-s-00-c-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t0805-c5517-ibrdr-s-00-a-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t0805-c5522-brdr-00-b-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css-generated-content/012-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css3-text/css3-text-decoration/text-decoration-style-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/dom/clone-node-dynamic-style-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-cell-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-column-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-column-group-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-quirks-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-row-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_border-table-row-group-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_layers-hide-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-cell-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-column-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-column-group-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-row-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_position-table-row-group-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-cell-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-column-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-column-group-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-row-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/table/backgr_simple-table-row-group-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/color-emoji-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/color-emoji-expected.txt
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-003-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/ietestcenter/css3/bordersbackgrounds/border-radius-clip-001-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/svg/custom/no-inherited-dashed-stroke-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/svg/custom/svg-fonts-in-html-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/tables/mozilla/bugs/bug4576-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/tables/mozilla_expected_failures/bugs/bug1055-2-expected.png
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/transforms/transform-on-inline-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/platform/linux/virtual/layout_ng_experimental/fast/multicol/border-radius-clipped-layer-second-column-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng_experimental/fast/multicol/border-radius-clipped-layer-second-column-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng_experimental/fast/multicol/border-radius-clipped-layer-second-column-expected.png
[delete] https://crrev.com/1e87fd07fcd40a2b1c3ad4ac4e0e55e4cf69966e/third_party/WebKit/LayoutTests/platform/win/virtual/layout_ng_experimental/fast/multicol/border-radius-clipped-layer-second-column-expected.txt
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/blink/renderer/core/paint/box_decoration_data.cc
[modify] https://crrev.com/c432775b685a52d429bb6004fb7bce08dbc3d686/third_party/blink/renderer/core/paint/box_decoration_data.h

Project Member

Comment 118 by bugdroid1@chromium.org, Apr 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5a40ea2527d1ef1a16859a96449b085d9884903f

commit 5a40ea2527d1ef1a16859a96449b085d9884903f
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Apr 26 04:31:14 2018

[LayoutNG] Include frame rect into visual rect for NGPhysicalTextFragment

This patch changes visual rect of NGPhysicalTextFragment to
include its frame rect. Legacy does so, but NG did not when
it was first implemented due to the lack of understanding.

After reviewing test results, it turns out that by not doing
so, background and decorations on space characters are
affected by this difference because space characters do not
have glyph bounding box, which results in empty visual rect.

Includes rebaselines that improve the rendering.

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I888f8b27680aa1ff806cca15c84919461c06fc31
Reviewed-on: https://chromium-review.googlesource.com/1027012
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553914}
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/20110323/c543-txt-decor-000-expected.png
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/4776765-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/text-color-change-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/delete-into-nested-block-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/iframe-display-block-to-display-none-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/iframe-display-none-to-display-block-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/invalidation-after-opacity-change-subtree-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-1-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-10-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-2-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-3-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-4-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-5-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-6-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-7-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-8-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-9-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/multicol/column-rules-fixed-height-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/outline/inline-outline-repaint-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/paint-invalidation-with-reparent-across-frame-boundaries-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/reflection/reflection-with-rotation-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/resize-iframe-text-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/fixed-child-of-transformed-move-after-scroll-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/inline-style-change-in-scrolled-view-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset2-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset3-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/repaint-during-scroll-with-zoom-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-div-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-iframe-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/scroll-descendant-with-cached-cliprects-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selected-replaced-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/subtree-root-skipped-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-image-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-inner-svg-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-background-partial-redraw-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-image-change-content-size-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/text-rescale-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/caret-contenteditable-content-after-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-match-document-change-expected.txt
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/blink/renderer/core/layout/ng/inline/ng_physical_text_fragment.cc
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/blink/renderer/core/layout/ng/inline/ng_physical_text_fragment.h
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.h
[modify] https://crrev.com/5a40ea2527d1ef1a16859a96449b085d9884903f/third_party/blink/renderer/core/paint/ng/ng_paint_fragment_test.cc

Project Member

Comment 119 by bugdroid1@chromium.org, Apr 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d37ff72879a293c9c1baa0485fbd7337f50f5624

commit d37ff72879a293c9c1baa0485fbd7337f50f5624
Author: Koji Ishii <kojii@chromium.org>
Date: Sat Apr 28 10:17:23 2018

[LayoutNG] Fix bounding box in ShapeResult::CopyRange

This patch fixes ShapeResult::CopyRange to compute more accurate
glyph bounding box.

There were 2 problems before this patch:
1. It always truncated the right edge. This is problematic when
   Copying (0, 1) of ". " in RTL, which resulted in an empty
   result.
2. It assumed no glyph overflow at the edge. This resulted in
   common glyph overflows such as "t" or "m" were cut off.

This patch extracts the logic to compute glyph bounding box from
ComputeGlyphPositions to a new helper class. CopyRange uses the
class to compute the line-left/right most glyph bounding box.

Bug: 636993, 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I7d2068566308081727c996e3ac0fe23aae6558d1
Reviewed-on: https://chromium-review.googlesource.com/1023536
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#554645}
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/delete-into-nested-block-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-1-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-10-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-2-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-3-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-4-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-5-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-6-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-7-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-8-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-9-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-div-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-iframe-expected.txt
[add] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-partial-invalidation-between-blocks-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/blink/renderer/platform/fonts/shaping/harf_buzz_shaper_test.cc
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/blink/renderer/platform/fonts/shaping/shape_result.h
[modify] https://crrev.com/d37ff72879a293c9c1baa0485fbd7337f50f5624/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h

Project Member

Comment 120 by bugdroid1@chromium.org, May 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e639e0c8ef97002e77d5ce673a1ce072c9738ce7

commit e639e0c8ef97002e77d5ce673a1ce072c9738ce7
Author: Emil A Eklund <eae@chromium.org>
Date: Tue May 08 03:20:53 2018

[LayoutNG] Fix inline mask painting for multi-line

In legacy layout multi-line image mask painting is handled by giving the
entire width of the element to the painting code and then clipping it to
ensure the left edge is omitted for all but the first line and the right
edge is for all but the last. This is inefficient and different from how
the logic to omit edges is implement for other border/image paint calls.

This change adds include_logical_left_edge/include_logical_right_edge to
the NinePieceImageGrid constructor and uses these new parameters to size
the left and right edges respectively. Matching existing painting logic.

Bug: 714962
Test: fast/borders/inline-mask-overlay-image.html
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I4bcefcc91115a9601632d9e1a0bce70b591cd0a6
Reviewed-on: https://chromium-review.googlesource.com/1048844
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556671}
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/borders/inline-mask-overlay-image-expected.png
[add] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/borders/inline-mask-overlay-image-expected.txt
[add] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/borders/inline-mask-overlay-image-outset-expected.png
[add] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/borders/inline-mask-overlay-image-outset-expected.txt
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/box_painter.cc
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/box_painter_base.cc
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/box_painter_base.h
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/nine_piece_image_grid.cc
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/nine_piece_image_grid.h
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/nine_piece_image_painter.cc
[modify] https://crrev.com/e639e0c8ef97002e77d5ce673a1ce072c9738ce7/third_party/blink/renderer/core/paint/nine_piece_image_painter.h

Project Member

Comment 121 by bugdroid1@chromium.org, May 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4f231ba426347e172ecd2a97f751bd49400ecab2

commit 4f231ba426347e172ecd2a97f751bd49400ecab2
Author: Aleks Totic <atotic@chromium.org>
Date: Thu May 10 07:09:20 2018

[LayoutNG] Paint offset adjustment for SelfPaintingBlocks

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I94905e3ed6e80663b62dd63cc5f3de5b89317917
Reviewed-on: https://chromium-review.googlesource.com/1053372
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557472}
[modify] https://crrev.com/4f231ba426347e172ecd2a97f751bd49400ecab2/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/4f231ba426347e172ecd2a97f751bd49400ecab2/third_party/blink/renderer/core/paint/adjust_paint_offset_scope.h

Project Member

Comment 122 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/66a7be19c75e8f63d872a5fe08c40c263e3a71de

commit 66a7be19c75e8f63d872a5fe08c40c263e3a71de
Author: Emil A Eklund <eae@chromium.org>
Date: Fri May 11 00:34:08 2018

Change BoxModelObjectPainter to not store flow size

Refactor BoxPainterBase and BoxModelObjectPainter to supply flowbox size
as parameter to PaintFillLayer instead of storing it as a private field.

This will in turn help with code re-use between InlineFlowBoxPainter and
the LayoutNG equivalent.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I342c51c87eb253e2d6420f2b11440b77c564f67d
Reviewed-on: https://chromium-review.googlesource.com/1054133
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557738}
[modify] https://crrev.com/66a7be19c75e8f63d872a5fe08c40c263e3a71de/third_party/blink/renderer/core/paint/box_model_object_painter.cc
[modify] https://crrev.com/66a7be19c75e8f63d872a5fe08c40c263e3a71de/third_party/blink/renderer/core/paint/box_model_object_painter.h
[modify] https://crrev.com/66a7be19c75e8f63d872a5fe08c40c263e3a71de/third_party/blink/renderer/core/paint/box_painter_base.cc
[modify] https://crrev.com/66a7be19c75e8f63d872a5fe08c40c263e3a71de/third_party/blink/renderer/core/paint/box_painter_base.h
[modify] https://crrev.com/66a7be19c75e8f63d872a5fe08c40c263e3a71de/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc

Project Member

Comment 123 by bugdroid1@chromium.org, May 15 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/71426b9aa50bd9faebb73540dcbcf55d315620e4

commit 71426b9aa50bd9faebb73540dcbcf55d315620e4
Author: Emil A Eklund <eae@chromium.org>
Date: Tue May 15 22:55:48 2018

[LayoutNG] Fix border/background painting for multi-line

Fix border, background, and mask painting for inline blocks spanning two
or more lines or that are otherwise fragmented across multiple entities.

This involved refactoring the existing inline box painting code to allow
code sharing between legacy and LayoutNG painting code. It also required
changing LayoutNG painting to further distinguish between inline and non
inline boxes as the background image painting code in particular require
taking the other fragments for a fragmented object into account when the
image offsets and clipping is computed.

Finally, this cleans up the flow box paint logic for both legacy and NG.

Bug: 714962
Test: fast/backgrounds/border-radius-split-background-image.html
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: If8e987c313c2792090908f181800448da54f133d
Reviewed-on: https://chromium-review.googlesource.com/1058677
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558871}
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/backgrounds/border-radius-split-background-expected.txt
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/backgrounds/border-radius-split-background-image-expected.txt
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/BUILD.gn
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/box_model_object_painter.cc
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/box_model_object_painter.h
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/box_painter_base.cc
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/box_painter_base.h
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/inline_box_painter_base.cc
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/inline_box_painter_base.h
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/inline_flow_box_painter.h
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.cc
[add] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.h
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/71426b9aa50bd9faebb73540dcbcf55d315620e4/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 124 by bugdroid1@chromium.org, May 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/afb269d48538e13e439cd7d13f17943925dd9eb2

commit afb269d48538e13e439cd7d13f17943925dd9eb2
Author: Emil A Eklund <eae@chromium.org>
Date: Wed May 16 01:14:47 2018

Clean up BoxPainterBase

Refactor and clean up BoxPainterBase to improve legibility and to reduce
code duplication.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ib738b19e62117046391a9c7b45dcddd1c2ecbb23
Reviewed-on: https://chromium-review.googlesource.com/1060568
Reviewed-by: Stefan Zager <szager@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558910}
[modify] https://crrev.com/afb269d48538e13e439cd7d13f17943925dd9eb2/third_party/blink/renderer/core/paint/box_painter_base.cc
[modify] https://crrev.com/afb269d48538e13e439cd7d13f17943925dd9eb2/third_party/blink/renderer/core/paint/box_painter_base.h

Project Member

Comment 125 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/af42cdfe113bc3a3adee383212f6534b0dcabcfd

commit af42cdfe113bc3a3adee383212f6534b0dcabcfd
Author: Emil A Eklund <eae@chromium.org>
Date: Thu May 17 00:11:02 2018

[LayoutNG] Implement local attachment bg painting

Implement NGBoxFragmentPainter::AdjustForScrolledContent among requisite
support methods. Falls back on the underlying layout object for overflow
computation for now as scrolling and overflow isn't supported by NG yet.

Test: fast/overflow/overflow-with-local-background-attachment.html
Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Idd77f7ef5c55f320255325045ed5cc00d14fa159
Reviewed-on: https://chromium-review.googlesource.com/1062325
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559353}
[modify] https://crrev.com/af42cdfe113bc3a3adee383212f6534b0dcabcfd/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/af42cdfe113bc3a3adee383212f6534b0dcabcfd/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 126 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a1ff955dab1504b25511274ca0fb2cda1a23df89

commit a1ff955dab1504b25511274ca0fb2cda1a23df89
Author: Koji Ishii <kojii@chromium.org>
Date: Thu May 17 18:07:25 2018

[LayoutNG] Apply clipping to atomic inlines when needed

In the current paint system, ObjectPainter::PaintAllPhasesAtomically
calls LayoutObject::Paint, which creates a painter on each phase.
This goes through BlockPainter::Paint, which instantiate BoxClipper.

Since NGBoxFragmentPainter::PaintAllPhasesAtomically calls
PaintObject directly, it needs to instantiate NGBoxClipper.

I'm not confident it is the right thing to instantiate NGBoxClipper
here yet, but at least for now, only PaintAtomicInline calls this
function, and NGBoxClipper in NGBoxFragmentPainter::Paint doesn't
work due to the different requirements for atomic inlines. We can
revisit this when we have better idea how to handle atomic inlines
in NG painters, or when other cases need to call
PaintAllPhasesAtomically.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I3db08a9ca1b5a8dc8b37fd42c3d9f55d3832cdb0
Reviewed-on: https://chromium-review.googlesource.com/1062666
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559605}
[modify] https://crrev.com/a1ff955dab1504b25511274ca0fb2cda1a23df89/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/a1ff955dab1504b25511274ca0fb2cda1a23df89/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 127 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/991c5c19fc2a89f125e8e3d79eb41d12e8aa3842

commit 991c5c19fc2a89f125e8e3d79eb41d12e8aa3842
Author: Koji Ishii <kojii@chromium.org>
Date: Thu May 17 18:15:39 2018

[LayoutNG] Route NGPaintFragment::OverflowClipRect to LayoutBox

This patch routes NGPaintFragment::OverflowClipRect to
NGPhysicalFragment, which routes to LayoutBox.

I once considered copying the logic, but NGPhysicalFragment
already does this for other overflow functions and we need to
copy overflow data back to LayoutObject tree anyway.

The implementation before this patch returns the border box,
while it is expected to return the padding box, or a few
other special rect depends on RLS, the class (LayoutTable
and LayoutView overrides this function,) and has additional
logic for scrollbars and control.

This function is not used much yet, in most places LayoutNG
uses LayoutBox::OverflowClipRect, but outline and NodeAtPoint
use this function.

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ib1ae6635a07d735288b6b525a8fc89a507767be1
Reviewed-on: https://chromium-review.googlesource.com/873253
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559613}
[modify] https://crrev.com/991c5c19fc2a89f125e8e3d79eb41d12e8aa3842/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/991c5c19fc2a89f125e8e3d79eb41d12e8aa3842/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/991c5c19fc2a89f125e8e3d79eb41d12e8aa3842/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/991c5c19fc2a89f125e8e3d79eb41d12e8aa3842/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 128 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7222077a134c377722860171e68484a8c7170d86

commit 7222077a134c377722860171e68484a8c7170d86
Author: Emil A Eklund <eae@chromium.org>
Date: Thu May 17 21:52:48 2018

[LayoutNG] Move clip/overflow methods to NGPhysicalBoxFragment

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I25756814482f405656441760e82d5626e1127336
Reviewed-on: https://chromium-review.googlesource.com/1064823
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559699}
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h
[modify] https://crrev.com/7222077a134c377722860171e68484a8c7170d86/third_party/blink/renderer/platform/geometry/layout_rect_outsets.h

Project Member

Comment 129 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8b6831c183faf1ba52b4073fe4002061a6813edc

commit 8b6831c183faf1ba52b4073fe4002061a6813edc
Author: Koji Ishii <kojii@chromium.org>
Date: Thu May 24 00:38:25 2018

[LayoutNG] Fix uninitialized variable in NGBaseFragmentBuilder

The `style_variant_` field was originally added when we
introduced NGStyleVariant[1] and extended to all fragments[2],
but it was not initialized and suddenly starts failing for
box fragments to have kEllipsis in some tests when
'--run-layout-test' option is used.

This patch initializes it to kStandard.

[1] https://chromium-review.googlesource.com/956552
[2] https://chromium-review.googlesource.com/1068781

Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng
Change-Id: Ib7013e9c80f54550f9fc1262345ffd2fa18b3790
Reviewed-on: https://chromium-review.googlesource.com/1068793
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561336}
[modify] https://crrev.com/8b6831c183faf1ba52b4073fe4002061a6813edc/third_party/blink/renderer/core/layout/ng/ng_base_fragment_builder.cc

Project Member

Comment 130 by bugdroid1@chromium.org, Jun 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b15a6a4e21c6e2c1f80a59760444a41956babec7

commit b15a6a4e21c6e2c1f80a59760444a41956babec7
Author: Aleks Totic <atotic@chromium.org>
Date: Fri Jun 01 01:43:02 2018

[LayoutNG] Fix painting of inline children

Inline children were not getting painted because CullRect
optimization was testing visibility against the wrong rectangle.

Contents being painted are enclosed by VisualContentRect,
not VisualOverflowRect.

VisualContentRect encloses all children's ink.
VisualOverflowRect encloses all self's ink.

I recommend renaming:
VisualOverflowRect to SelfInkRect.
VisualContentRect to ChildrenInkRect.


Bug: 714962
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Iefe9f1e56f6b21e59731556b94ac54ba8b4b2c46
Reviewed-on: https://chromium-review.googlesource.com/1081329
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563477}
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.cc
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/layout/ng/ng_physical_box_fragment.h
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.h
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/b15a6a4e21c6e2c1f80a59760444a41956babec7/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Blockedon: 854889
Project Member

Comment 132 by bugdroid1@chromium.org, Jun 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5c9711672411542ead18a35c95dec6a48947f077

commit 5c9711672411542ead18a35c95dec6a48947f077
Author: Yoshifumi Inoue <yosin@chromium.org>
Date: Thu Jun 21 13:13:48 2018

[LayoutNG] Adapt accessibility module to LayoutNG

This patch adapts accessibility module to LayoutNG by:
 * Make |AbstractInlineTextBox| as an interface like class and implements legacy
 version |LegacyAbstractInlineTextBox| using InlineTextBox and LayoutNG
 version |NGAbstractInlineTextBox| using NGPaintFragment.
 * Make |AXLayoutObject| to handle |LayoutNGListMarker|
   - |LayoutListMarker| has no children.
   - |LayoutNGListMarker| is a container of list marker.
 * Make |AXLayoutObject::ComputeAccessibilityIsIgnored()| to handle LayoutNG
 block flow to check empty block flow.
 * Make |NGPaintFragment::FragmentRange::iterator| to work with |std::next()|
 * Intrdouce LayoutText::GetFirstLetterPart() for ease of getting layout object
  for first-letter part from layout object for remaining part.

Following patch will implements NGAbstractInlineTextBox::CharacterWidths()

The doc,https://bit.ly/2kUEFZy, contains study and change details.

TBR=dmazzoni@chromium.org

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Iae25e8a7d7e6be0c7478470c690e081084476e85
Reviewed-on: https://chromium-review.googlesource.com/1104082
Commit-Queue: Yoshifumi Inoue <yosin@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569235}
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/BUILD.gn
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/layout_object.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/layout_text.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/layout_text.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/layout_text_fragment.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/layout_text_fragment.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/line/abstract_inline_text_box.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/line/abstract_inline_text_box.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/line/inline_text_box.cc
[add] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/ng/inline/ng_abstract_inline_text_box.cc
[add] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/ng/inline/ng_abstract_inline_text_box.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/ng/list/layout_ng_list_marker.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/layout/ng/list/layout_ng_list_marker.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h
[modify] https://crrev.com/5c9711672411542ead18a35c95dec6a48947f077/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc

Project Member

Comment 133 by bugdroid1@chromium.org, Jun 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dd40dd139ddc8739797f923d4bcd3681e694ac2c

commit dd40dd139ddc8739797f923d4bcd3681e694ac2c
Author: Aleks Totic <atotic@chromium.org>
Date: Mon Jun 25 19:22:29 2018

[LayoutNG] Fix AtomicInline+HasLayer painting

Main fix is to fix painting of self-painting AtomicInlines.
self-painting AtomicInlines must paint their background
in background phase.

This also fixed several other tests. Rebaselined their
txt expectations.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ibaff3c6a681fec81101cb4b8d67877302d74ddff
Reviewed-on: https://chromium-review.googlesource.com/1112673
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570128}
[modify] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/draws-content/canvas-background-layer-expected.txt
[add] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/draws-content/webgl-background-layer-expected.txt
[add] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/geometry/foreground-layer-expected.txt
[add] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/geometry/repaint-foreground-layer-expected.txt
[add] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/layer-creation/rotate3d-overlap-expected.txt
[modify] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/overflow/scroll-ancestor-update-expected.txt
[modify] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/dd40dd139ddc8739797f923d4bcd3681e694ac2c/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h

Project Member

Comment 134 by bugdroid1@chromium.org, Jun 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d79895db74e78588aa8433560d245ac99df13cec

commit d79895db74e78588aa8433560d245ac99df13cec
Author: Aleks Totic <atotic@chromium.org>
Date: Sat Jun 30 04:12:45 2018

[LayoutNG] Do not paint text in all paint phases

We were painting text in all paint phases, causing some tests to crash.
Similar routine: LineBoxListPainter::Paint only paint during the foreground/selection phases.

This fixes 8 crashes, and removes some no longer necessary baselines.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ib4819b3dfee58256f398ef6f123553eb34107ec5
Reviewed-on: https://chromium-review.googlesource.com/1121545
Commit-Queue: Aleks Totic <atotic@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571759}
[modify] https://crrev.com/d79895db74e78588aa8433560d245ac99df13cec/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-expected.png
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic-expected.png
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic-expected.png
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-with-inline-ancestor-dynamic-expected.png
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-with-inline-ancestor-expected.png
[delete] https://crrev.com/c89899bac48b582c75a15a7ce6ea3c7dfc729a65/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/css/relative-positioned-block-with-inline-parent-dynamic-expected.png
[modify] https://crrev.com/d79895db74e78588aa8433560d245ac99df13cec/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/d79895db74e78588aa8433560d245ac99df13cec/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc

Project Member

Comment 135 by bugdroid1@chromium.org, Jul 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e20121e07df22f3976e8040f64ade69913bc8f63

commit e20121e07df22f3976e8040f64ade69913bc8f63
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Jul 10 19:42:52 2018

[LayoutNG] Make paint dump more informative

This patch changes NGPaintFragment::DebugName to be more
informative to make reviewing paint changes easier, as
suggested by atotic@ in CL:1128683.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I3255788fea8de74319ffdcc4f4f6ca1e00e0b2e2
Reviewed-on: https://chromium-review.googlesource.com/1130955
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#573862}
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/compositing/squashing/selection-repaint-with-gaps-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/block-no-inflow-children-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/box/hover-pseudo-borders-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/box/invalidate-box-shadow-currentColor-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/clipped-relative-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/replaced-clipped-positioned-not-wrong-incremental-repainting-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/iframe-inside-squashed-layer-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/remove-squashed-layer-plus-move-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/repaint-via-layout-offset-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/should-invoke-deferred-compositing-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/should-not-clip-composited-overflow-scrolling-layer-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/should-not-clip-composited-viewport-scrolling-layer-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/text-color-change-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/text-match-highlight-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/updating-scrolling-container-and-content-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/remove-inline-block-descendant-of-flex-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/repaint-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/gradients-em-stops-repaint-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/iframe-display-block-to-display-none-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/iframe-display-none-to-display-block-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/image/percent-size-image-resize-container-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/inline-block-resize-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/inline-color-change-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/inline-reflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/insert-frame-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/invalidation-after-opacity-change-subtree-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-1-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-10-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-2-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-3-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-4-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-5-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-6-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-7-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-8-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-9-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/lines-with-layout-delta-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/multicol/column-rules-fixed-height-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/non-text-link-invalidation-optimization-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/outline/outline-containing-image-in-non-standard-mode-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-right-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/inline-overflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/inline-vertical-lr-overflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/inline-vertical-rl-overflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/negative-text-indent-with-overflow-hidden-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overhanging-float-detach-repaint-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/paint-invalidation-with-reparent-across-frame-boundaries-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/block-layout-inline-children-float-positioned-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/inline-relative-positioned-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-document-element-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-great-grandparent-change-location-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/relative-inline-positioned-movement-repaint-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/push-block-with-first-line-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/reflection/reflection-redraw-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/reflection/reflection-with-rotation-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/remove-inline-layer-after-layout-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/repaint-descandant-on-ancestor-layer-move-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/resize-iframe-text-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/fixed-child-of-transformed-move-after-scroll-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/inline-style-change-in-scrolled-view-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/invalidate-after-composited-scroll-of-window-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset2-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset3-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/line-in-scrolled-clipped-block-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-delete-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-div-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-iframe-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/scroll-descendant-with-cached-cliprects-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/invalidation-rect-includes-newline-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/invalidation-rect-includes-newline-for-rtl-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/invalidation-rect-includes-newline-for-vertical-lr-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/invalidation-rect-includes-newline-for-vertical-rl-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/invalidation-rect-with-br-includes-newline-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/japanese-rl-selection-clear-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selected-replaced-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-change-in-iframe-with-relative-parent-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-clear-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-rl-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-within-composited-scroller-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/text-selection-rect-in-overflow-2-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/text-selection-rect-in-overflow-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/subtree-root-skipped-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/add-background-property-on-root-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/add-outline-property-on-root-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/deep-nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/deep-nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/embedded-svg-size-changes-no-layout-triggers-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/nested-embedded-svg-size-changes-no-layout-triggers-1-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/nested-embedded-svg-size-changes-no-layout-triggers-2-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/object-sizing-no-width-height-change-content-box-size-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/overflow-repaint-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-image-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-inner-svg-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/remove-background-property-on-root-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/remove-outline-property-on-root-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/resize-svg-invalidate-children-2-expected.txt
[modify] https://crrev.com/e20121e07df22f3976e8040f64ade69913bc8f63/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/scale-change-huge-geometry-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-background-partial-redraw-expected.txt
[delete] https://crrev.com/ff22a4d365c366a01329d4a4989aba3140408151/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/pain
Project Member

Comment 136 by bugdroid1@chromium.org, Jul 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dd94efdf44c36c1bf0a372ce3e8caa45c2f6acc0

commit dd94efdf44c36c1bf0a372ce3e8caa45c2f6acc0
Author: Peter Mayo <petermayo@chromium.org>
Date: Tue Jul 17 17:27:24 2018

Re-enable layout test styledEmptyInlinesWithBRs

In virtual/layout_ng this test has been passing for a while.

https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=webkit_layout_tests&tests=virtual/layout_ng/fast/inline/styledEmptyInlinesWithBRs.html

a local bisect reveals this is the fix:
https://chromium-review.googlesource.com/1132532

Bug: 714962
Change-Id: Idbe3cf1a463596d2cc99f38360cad255af0bcdb8
Reviewed-on: https://chromium-review.googlesource.com/1140367
Reviewed-by: Peter Mayo <petermayo@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Commit-Queue: Peter Mayo <petermayo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575700}
[modify] https://crrev.com/dd94efdf44c36c1bf0a372ce3e8caa45c2f6acc0/third_party/WebKit/LayoutTests/TestExpectations

Project Member

Comment 137 by bugdroid1@chromium.org, Jul 24

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/414c5c87ffe2b222970dcb8bf35099ae7fdc646c

commit 414c5c87ffe2b222970dcb8bf35099ae7fdc646c
Author: Emil A Eklund <eae@chromium.org>
Date: Tue Jul 24 00:48:28 2018

Reland "[LayoutNG] Fix border/background painting for multi-line"

Fix border, background, and mask painting for inline blocks spanning two
or more lines or that are otherwise fragmented across multiple entities.

This involved refactoring the existing inline box painting code to allow
code sharing between legacy and LayoutNG painting code. It also required
changing LayoutNG painting to further distinguish between inline and non
inline boxes as the background image painting code in particular require
taking the other fragments for a fragmented object into account when the
image offsets and clipping is computed.

Finally, this cleans up the flow box paint logic for both legacy and NG.

This reverts r561186 (01dda95eb4fddbd990d6f5a11d321eb1033086dd) which in
turn was a revert of the original patch (r558871) which was reverted due
to a performance regression in blink_perf.paint color-changes benchmark.

To avoid the regression this patch moves construction of the box painter
from the inline box painter constructor to the paint methods where it is
needed, thereby avoiding the construction overhead in cases where cached
drawings may be reused. It also limits the lifecycle of the box painter.

Bug: 714962, 844624
Test: fast/backgrounds/border-radius-split-background-image.html

Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I87ae744fdd204133e40b50721eca6947c81da817
Reviewed-on: https://chromium-review.googlesource.com/1144216
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577385}
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/backgrounds/border-radius-split-background-expected.txt
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/backgrounds/border-radius-split-background-image-expected.txt
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/BUILD.gn
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/inline_box_painter_base.cc
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/inline_box_painter_base.h
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/inline_flow_box_painter.h
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.cc
[add] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.h
[modify] https://crrev.com/414c5c87ffe2b222970dcb8bf35099ae7fdc646c/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc

Project Member

Comment 138 by bugdroid1@chromium.org, Jul 24

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1

commit f18c18dd2c5ddd108686ed13f84c08c0c3250ca1
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Jul 24 02:33:33 2018

[LayoutNG] Minimize paint invalidation when layout is cached

When layout is cached, this patch:
1. Skips marking full paint invalidation.
2. Ensures the DisplayClientItem ID (the pointer of the
   DisplayItemClient) is unchanged for paint system to track
   the identity and possible offset changes.

We may be able to (or may need to) reduce paint invalidations
in more generic SetPaintFragment function, but I'm starting
from eliminating the simple case first.

By reviewing the paint/invalidation test results, 73 tests
have the same or less invalidations with this change.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I2f6a06aeca4898ca2e5347be23596c811a389f2b
Reviewed-on: https://chromium-review.googlesource.com/1146120
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577412}
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/TestExpectations
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/block-layout-inline-children-replaced-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/box/box-inline-resize-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-3509-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-5699-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-6278-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-6473-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-7235-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/caret-ancestor-clip-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/details-open-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/align-content-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/align-content-distribution-change-grid-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/align-items-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/align-self-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/align-self-change-grid-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/justify-content-distribution-change-grid-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/justify-self-change-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/float-move-during-layout-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/list-marker-2-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/make-children-non-inline-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/multicol/multicol-with-text-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-right-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/line-overflow-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overhanging-float-detach-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/paint-invalidation-with-reparent-across-frame-boundaries-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/absolute-margin-change-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/align-content-position-change-grid-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/block-layout-inline-children-float-positioned-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/containing-block-position-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/justify-content-position-change-grid-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/layout-state-relative-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/layoutstate-invalid-invalidation-inline-relative-positioned-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-list-offset-change-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/quotes-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/remove-inline-after-layout-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/remove-inline-layer-after-layout-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/repaint-descandant-on-ancestor-layer-move-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-iframe-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/scroll-descendant-with-cached-cliprects-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/scrolled-iframe-scrollbar-change-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selected-replaced-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/stacked-diacritics-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-image-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-inner-svg-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-image-change-content-size-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-row-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/table-cell-move-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/table-shrink-row-repaint-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-append-dirty-lines-expected.txt
[add] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-match-document-change-expected.txt
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/layout/layout_block_flow.h
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.cc
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.h
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/layout/ng/ng_block_node.cc
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/f18c18dd2c5ddd108686ed13f84c08c0c3250ca1/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Blockedon: 866771
Blockedon: 869265
Project Member

Comment 141 by bugdroid1@chromium.org, Jul 31

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9bb8df7f9974fceb1b29ba62da5b893248f2b34a

commit 9bb8df7f9974fceb1b29ba62da5b893248f2b34a
Author: Emil A Eklund <eae@chromium.org>
Date: Tue Jul 31 16:26:55 2018

[LayoutNG] Don't pre-compute borders & paddings

In LayoutNG computing the border outsets turned out to be more expensive
than expected. Change NGBoxFragmentPainter to compute it lazily instead.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I623e0f3a0fd62ee853843ba31e8e4075c0599938
Reviewed-on: https://chromium-review.googlesource.com/1153302
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#579429}
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/box_model_object_painter.cc
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/box_model_object_painter.h
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/box_painter_base.cc
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/box_painter_base.h
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/9bb8df7f9974fceb1b29ba62da5b893248f2b34a/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h

Project Member

Comment 142 by bugdroid1@chromium.org, Jul 31

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/457884447fe28248e516f7db84a10bd69dac8aa3

commit 457884447fe28248e516f7db84a10bd69dac8aa3
Author: Emil A Eklund <eae@chromium.org>
Date: Tue Jul 31 18:57:29 2018

[LayoutNG] Remove obsolete legacy_paint_offset

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I82a2ee42527cd7186173d476826654125bbea876
Tbr: kojii@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/1157001
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#579505}
[modify] https://crrev.com/457884447fe28248e516f7db84a10bd69dac8aa3/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 143 by bugdroid1@chromium.org, Aug 13

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/48b591dba87b8d782516a3b82c8b14018af23e01

commit 48b591dba87b8d782516a3b82c8b14018af23e01
Author: Emil A Eklund <eae@chromium.org>
Date: Mon Aug 13 04:01:16 2018

Compute multi-line lazily for inline painting

Computing whether an inline block spans multiple lines is more expensive
than expected thus causing a small paint performance regression for both
legacy layout and LayoutNG. This patch moves the computation to use-time
thereby avoiding it when cached drawings are used or paint isn't needed.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I97380b2e304c3c3293514ecf118fffdf6f9b9292
Reviewed-on: https://chromium-review.googlesource.com/1170310
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582501}
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/inline_box_painter_base.cc
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/inline_box_painter_base.h
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/inline_flow_box_painter.cc
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/inline_flow_box_painter.h
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.cc
[modify] https://crrev.com/48b591dba87b8d782516a3b82c8b14018af23e01/third_party/blink/renderer/core/paint/ng/ng_inline_box_fragment_painter.h

Blockedon: 874506
Project Member

Comment 145 by bugdroid1@chromium.org, Aug 15

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/61118bb9b3e22e560c108e75fd08b40567cbc6d8

commit 61118bb9b3e22e560c108e75fd08b40567cbc6d8
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Aug 15 18:03:57 2018

[LayoutNG] Rebaseline fast/box-shadow/box-shadow.html

The only difference from legacy at this point is when
'box-shadow' is applied to the '::first-line' style.

Edge and Gecko do not support it.

NOTRY=true

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: I2fbfba36b9a606ea4a1f0e40dada8102fd0ed623
Reviewed-on: https://chromium-review.googlesource.com/1175755
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583322}
[modify] https://crrev.com/61118bb9b3e22e560c108e75fd08b40567cbc6d8/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/61118bb9b3e22e560c108e75fd08b40567cbc6d8/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/box-shadow/box-shadow-expected.png

Project Member

Comment 146 by bugdroid1@chromium.org, Aug 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/902e5475240b97a4fb8c43ef1344229dfc3bca2a

commit 902e5475240b97a4fb8c43ef1344229dfc3bca2a
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Aug 16 13:45:13 2018

[LayoutNG] Store NGPaintFragment in LayoutObject

This patch stores a one-way linked list of NGPaintFragment to
their source LayoutObject. Looking up the HashMap consumes
non-ignorable time during paint.

This patch adds IsInLayoutNGInlineFormattingContext flag to
LayoutObject. This flag represents whether the object is in
LayoutNG inline formatting context, even if the object itself
is laid out by legacy.

With the flag, the storage used for storing InlineBox in
LayoutText, LayoutInline, and LayoutBox are changed to union
to store the first NGPaintFramgent.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I7dfd11fafa9b1527b8d77e1fa3a24abf0e7f551e
Reviewed-on: https://chromium-review.googlesource.com/1170726
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583633}
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/api/line_layout_inline.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_box.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_box.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_inline.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_text.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/layout_text.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/line/line_box_list.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/line/line_box_list.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.h
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm_test.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/902e5475240b97a4fb8c43ef1344229dfc3bca2a/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 147 by bugdroid1@chromium.org, Aug 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aeacfe83e5af7718c1b178f6b09a48098d66ad15

commit aeacfe83e5af7718c1b178f6b09a48098d66ad15
Author: Xida Chen <xidachen@chromium.org>
Date: Thu Aug 16 14:30:47 2018

Revert "[LayoutNG] Store NGPaintFragment in LayoutObject"

This reverts commit 902e5475240b97a4fb8c43ef1344229dfc3bca2a.

Reason for revert: <INSERT REASONING HERE>
Suspect causing layout test failure:
https://ci.chromium.org/buildbot/chromium.webkit/WebKit%20Linux%20Trusty%20ASAN/15204

Original change's description:
> [LayoutNG] Store NGPaintFragment in LayoutObject
> 
> This patch stores a one-way linked list of NGPaintFragment to
> their source LayoutObject. Looking up the HashMap consumes
> non-ignorable time during paint.
> 
> This patch adds IsInLayoutNGInlineFormattingContext flag to
> LayoutObject. This flag represents whether the object is in
> LayoutNG inline formatting context, even if the object itself
> is laid out by legacy.
> 
> With the flag, the storage used for storing InlineBox in
> LayoutText, LayoutInline, and LayoutBox are changed to union
> to store the first NGPaintFramgent.
> 
> Bug: 714962
> Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: I7dfd11fafa9b1527b8d77e1fa3a24abf0e7f551e
> Reviewed-on: https://chromium-review.googlesource.com/1170726
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#583633}

TBR=eae@chromium.org,kojii@chromium.org,mstensho@chromium.org

Change-Id: I9a870a209f86cfd061df8c82858b58093dff310b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/1177761
Reviewed-by: Xida Chen <xidachen@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583644}
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/api/line_layout_inline.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_box.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_box.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_inline.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_text.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/layout_text.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/line/line_box_list.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/line/line_box_list.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.h
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm_test.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/aeacfe83e5af7718c1b178f6b09a48098d66ad15/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 148 by bugdroid1@chromium.org, Aug 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26a0ce3d4ce061132a953fa04ecf54775075247f

commit 26a0ce3d4ce061132a953fa04ecf54775075247f
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Aug 17 06:49:13 2018

[LayoutNG] Store fragmented NGPaintFragment as a list

This patch stores fragmented NGPaintFragment as a list linked
from LayoutNGMixin.

The code path doesn't run (break_token is always nullptr) in
phase 1. But without keeping them, virtual/layout_ng_experimental
will crash randomly when CL:1170726 caches NGPaintFragment in
LayoutObject.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I6c7e4934dcb366d7dcb39412bf1aac40ebad7429
Reviewed-on: https://chromium-review.googlesource.com/1178081
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583980}
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/layout/layout_block_flow.h
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.cc
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.h
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/layout/ng/ng_block_node.cc
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/26a0ce3d4ce061132a953fa04ecf54775075247f/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 149 by bugdroid1@chromium.org, Aug 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/967d7327a5f5e260bbbee38199df5d42d9d1fad4

commit 967d7327a5f5e260bbbee38199df5d42d9d1fad4
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Aug 17 07:30:50 2018

Reland "[LayoutNG] Store NGPaintFragment in LayoutObject"

This is a reland of 902e5475240b97a4fb8c43ef1344229dfc3bca2a

The original patch discovered where NGPaintFragment still
in-use are destructed unintentionally. The problem has been
there when LayoutNGBlockFragmentation runtime flag was
enabled, but it did not cause many crashes fortunately.

Re-landing after keeping all NGPaintFragment in use in
r583980 (CL:1178081).

Original change's description:
> [LayoutNG] Store NGPaintFragment in LayoutObject
>
> This patch stores a one-way linked list of NGPaintFragment to
> their source LayoutObject. Looking up the HashMap consumes
> non-ignorable time during paint.
>
> This patch adds IsInLayoutNGInlineFormattingContext flag to
> LayoutObject. This flag represents whether the object is in
> LayoutNG inline formatting context, even if the object itself
> is laid out by legacy.
>
> With the flag, the storage used for storing InlineBox in
> LayoutText, LayoutInline, and LayoutBox are changed to union
> to store the first NGPaintFramgent.
>
> Bug: 714962
> Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: I7dfd11fafa9b1527b8d77e1fa3a24abf0e7f551e
> Reviewed-on: https://chromium-review.googlesource.com/1170726
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#583633}

TBR=eae@chromium.org, mstensho@chromium.org

Bug: 714962
Change-Id: Ie7c000c918e22e24f378eb14ca68243ed0e7bfa8
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/1178441
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583983}
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/api/line_layout_inline.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_box.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_box.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_inline.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_text.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/layout_text.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/line/line_box_list.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/line/line_box_list.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.h
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/967d7327a5f5e260bbbee38199df5d42d9d1fad4/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 150 by bugdroid1@chromium.org, Aug 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f1c5881083213ebf661a623404230c6b3c22dff9

commit f1c5881083213ebf661a623404230c6b3c22dff9
Author: Emil A Eklund <eae@chromium.org>
Date: Sun Aug 19 13:40:48 2018

Pre-compute start/end index for ShapeResult

The methods for computing start and end index for a shape result compute
the values on demand, while not too expensive these methods are called a
lot during both layout and paint. By pre-computing the values text paint
performance is improved by about 10% for LayoutNG & about 2% for legacy.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Ib652b947d6cc670e657d72d753e96ecb4e2aa85d
Reviewed-on: https://chromium-review.googlesource.com/1176202
Commit-Queue: Emil A Eklund <eae@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#584335}
[modify] https://crrev.com/f1c5881083213ebf661a623404230c6b3c22dff9/third_party/blink/renderer/platform/fonts/shaping/shape_result.cc
[modify] https://crrev.com/f1c5881083213ebf661a623404230c6b3c22dff9/third_party/blink/renderer/platform/fonts/shaping/shape_result.h

Project Member

Comment 151 by bugdroid1@chromium.org, Aug 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/56107d863099ed39edae9e98d30c12a3dfe16e94

commit 56107d863099ed39edae9e98d30c12a3dfe16e94
Author: Koji Ishii <kojii@chromium.org>
Date: Sat Aug 25 14:53:05 2018

[LayoutNG] Add kColumnBox box type

NGColumnLayoutAlgorithm produces a fragment for the multi-
column container, then fragments for column bxoes, and flow
the content into the column boxes.

In the current implementation, the multi-column container and
the column boxes have the same LayoutBlockFlow and that we
have some places we need to handle the column containers
differently.

With this patch, such fragments have kColumnBox box type so
that they are explicitly distinguishable.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Iefb7c5ac0c5869bf30b053f435a3408403d2e9f9
Reviewed-on: https://chromium-review.googlesource.com/1175588
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#586136}
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_block_layout_algorithm.cc
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_block_layout_algorithm.h
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm.cc
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_fragment_builder.cc
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/56107d863099ed39edae9e98d30c12a3dfe16e94/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.h

Project Member

Comment 152 by bugdroid1@chromium.org, Aug 27

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b7bc436cf529b4593db1521889cf5d3dbe3f3ac2

commit b7bc436cf529b4593db1521889cf5d3dbe3f3ac2
Author: Koji Ishii <kojii@chromium.org>
Date: Mon Aug 27 14:07:44 2018

[LayoutNG] Ensure associated paint fragments are cleared

r583983 (CL:1178441) checks associated InlineBox are cleared
when LayoutText and LayoutInline are destructed. This patch
checks associated paint fragments are cleared too.

https://chromium-review.googlesource.com/c/chromium/src/+/1180828

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I83e66e44be04366fcb072a2218e674c29be497c8
Reviewed-on: https://chromium-review.googlesource.com/1188407
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#586249}
[modify] https://crrev.com/b7bc436cf529b4593db1521889cf5d3dbe3f3ac2/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/b7bc436cf529b4593db1521889cf5d3dbe3f3ac2/third_party/blink/renderer/core/layout/layout_text.cc

Project Member

Comment 153 by bugdroid1@chromium.org, Aug 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5553ca2e6331fd1ab63717dfe8b47cf39c1da005

commit 5553ca2e6331fd1ab63717dfe8b47cf39c1da005
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Aug 28 11:33:30 2018

[LayoutNG] Cleanup how NGBlockNode sets/clears cached resluts and paint fragments

This patch cleans up how NGBlockNode sets/clears cached
results and paint fragments, reducing an "if" and avoiding
to clear paint fragment if we're going to update.

No behavior changes.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: I462a8d1632cb2bd6b2cef2fa4cb71493a97b4160
Reviewed-on: https://chromium-review.googlesource.com/1175749
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Christian Biesinger <cbiesinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#586655}
[modify] https://crrev.com/5553ca2e6331fd1ab63717dfe8b47cf39c1da005/third_party/blink/renderer/core/layout/ng/ng_block_node.cc

Project Member

Comment 154 by bugdroid1@chromium.org, Sep 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f5fc29571fd8355730a21a9654fc6a60180d45e5

commit f5fc29571fd8355730a21a9654fc6a60180d45e5
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Sep 14 17:51:38 2018

[LayoutNG] Fix painting scrollbars for inline blocks

This patch fixes painting scrollbars that are attached to
inline blocks that have inline children.

Painting inline blocks is a little different from existing
painters because they can be engine boundaries.
PaintOverflowControlsIfNeeded was added for this reason,
but we didn't call it for self painting atomic inlines.

Bug: 714962, 849751
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I1f8bec247a2625f5dba6fb2d5d1dc91229e08557
Reviewed-on: https://chromium-review.googlesource.com/1226790
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591388}
[modify] https://crrev.com/f5fc29571fd8355730a21a9654fc6a60180d45e5/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/f5fc29571fd8355730a21a9654fc6a60180d45e5/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc

Project Member

Comment 155 by bugdroid1@chromium.org, Sep 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a5cdd6fb07e2e16b0a9387149570638528962f5b

commit a5cdd6fb07e2e16b0a9387149570638528962f5b
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Sep 25 19:03:26 2018

[LayoutNG] Re-use NGPaintFragment for the same LayoutObject

This patch re-uses NGPaintFragment when corresponding
LayoutObject is the same.

Because paint system uses the address of DisplayItemClient
as the identifier, doing so not only reduces 2 alloc/free for
each NGPaintFragment (one for itself and another for children
vector) but also allows paint system to identify changes in
NGPaintFragment. Before this patch, all changes are handled
as "disappear" + "appear" pairs.

[blink_perf.paint] are mostly positive, up to 18.8%. Not all
tests are positive though, probably because the overhead to
compare LayoutObject is visible when no re-use is possible.

This patch is also the foundation to optimize paint
invalidation further. Still a good amount of invalidations
are done by subtree. By identifying NGPaintFragment for the
same node, we can tune the invalidation types to smaller ones.

[blink_perf.paint]: https://pinpoint-dot-chromeperf.appspot.com/job/13b534a7640000

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I3079a7baefda7730521ec58715a7571669c9bfb4
Reviewed-on: https://chromium-review.googlesource.com/1237697
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594038}
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/block-no-inflow-children-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-3509-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-5699-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-6278-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-7235-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-added-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-added-individual-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-removed-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-removed-individual-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/iframe-inside-squashed-layer-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/remove-inline-block-descendant-of-flex-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/repaint-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/gradients-em-stops-repaint-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/inline-reflow-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-2-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-8-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/lines-with-layout-delta-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-right-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/line-overflow-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/inline-relative-positioned-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/layout-state-relative-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-document-element-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/push-block-with-first-line-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/quotes-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/reflection/reflection-with-rotation-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/remove-inline-after-layout-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/resize-iframe-text-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset2-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset3-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/line-in-scrolled-clipped-block-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-delete-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-clear-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/subtree-root-skipped-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/object-sizing-no-width-height-change-content-box-size-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-image-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-inner-svg-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-image-change-content-size-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-repaint-percent-size-cell-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-repaint-vertical-align-cell-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-row-repaint-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/table-collapsed-border-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-append-dirty-lines-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-match-document-change-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/transform/transform-layout-repaint-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-centered-inline-under-fixed-pos-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-vertical-writing-mode-expected.txt
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.cc
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.h
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/a5cdd6fb07e2e16b0a9387149570638528962f5b/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 156 by bugdroid1@chromium.org, Sep 26

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/05fefab04b28656310905913e394afd653ed96f4

commit 05fefab04b28656310905913e394afd653ed96f4
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Sep 26 01:44:49 2018

[LayoutNG] Implement PaintTouchActionRects for LayoutNG

This patch implements PaintTouchActionRects in NGBoxFragmentPainter.

Still fails 3 more tests, they are to be investigated.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I517b0d8b9d62304cd9259c4c31a32a5a32a1e6a7
Reviewed-on: https://chromium-review.googlesource.com/1242256
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594178}
[modify] https://crrev.com/05fefab04b28656310905913e394afd653ed96f4/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/05fefab04b28656310905913e394afd653ed96f4/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.cc
[modify] https://crrev.com/05fefab04b28656310905913e394afd653ed96f4/third_party/blink/renderer/core/layout/ng/ng_physical_fragment.h
[modify] https://crrev.com/05fefab04b28656310905913e394afd653ed96f4/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/05fefab04b28656310905913e394afd653ed96f4/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h

Project Member

Comment 157 by bugdroid1@chromium.org, Sep 26

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2d1270f230278e207d8c136348be5d74e41804a3

commit 2d1270f230278e207d8c136348be5d74e41804a3
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Sep 26 18:27:34 2018

[LayoutNG] Fix ::first-line edge case and Inspector getPlatformFonts

This patch fixes:
1. ::first-line style is not applied when there are other
   anonymous inline boxes.
2. Inspector getPlatformFonts protocol collects fonts from
   two levels deep. Changed the logic not to include
   anonymous boxes to the depth limit.

Also the incorrect expectation was fixed; legacy counts
glyphs in ::first-letter twice.

Bug: 636993, 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Ia028710b728e8e9172b540a46b42d804c9f57699
Reviewed-on: https://chromium-review.googlesource.com/1245078
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594395}
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/inspector-protocol/css/css-get-platform-fonts-expected.txt
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/blink/renderer/core/inspector/inspector_css_agent.cc
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/blink/renderer/core/inspector/inspector_css_agent.h
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/blink/renderer/core/layout/layout_block_flow.cc
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/2d1270f230278e207d8c136348be5d74e41804a3/third_party/blink/renderer/core/layout/layout_inline.h

Project Member

Comment 158 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5cae37b5f84223f8f361d3dfaf639d6b85fdf37b

commit 5cae37b5f84223f8f361d3dfaf639d6b85fdf37b
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Sep 28 10:53:12 2018

[LayoutNG] Make constraint space for column balancing intermediate

Fragment caching and paint needs to know if fragments created
for a constraint space are for the regular layout that are to
be painted, or it's for intermediate computation.

Since the layout results for column balancing should not be
painted, this patch marks so.

This change alone doesn't fix all weird paint data
inconsistencies when block fragmentation is turned on. Other
issues need further investigation.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: I14d44ca10fd23726f2c08be45b10c2b0abe16bf7
Reviewed-on: https://chromium-review.googlesource.com/1250685
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595051}
[modify] https://crrev.com/5cae37b5f84223f8f361d3dfaf639d6b85fdf37b/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/5cae37b5f84223f8f361d3dfaf639d6b85fdf37b/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm.cc

Project Member

Comment 159 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bfa98748db2e4adf33cb84100c7496ece735e91b

commit bfa98748db2e4adf33cb84100c7496ece735e91b
Author: François Doray <fdoray@chromium.org>
Date: Fri Sep 28 13:42:16 2018

Revert "[LayoutNG] Make constraint space for column balancing intermediate"

This reverts commit 5cae37b5f84223f8f361d3dfaf639d6b85fdf37b.

Reason for revert: Find-it identified this as culprit for multiple failures as shown on https://findit-for-me.appspot.com/waterfall/failure?url=https://build.chromium.org/p/chromium.linux/builders/linux-xenial-rel/builds/3696

Failures in:
virtual/layout_ng_experimental/fast/multicol/balance-float-with-margin-top-and-line-after-break.html
virtual/layout_ng_experimental/fast/multicol/dynamic/remove-abspos-next-to-spanner.html


Original change's description:
> [LayoutNG] Make constraint space for column balancing intermediate
> 
> Fragment caching and paint needs to know if fragments created
> for a constraint space are for the regular layout that are to
> be painted, or it's for intermediate computation.
> 
> Since the layout results for column balancing should not be
> painted, this patch marks so.
> 
> This change alone doesn't fix all weird paint data
> inconsistencies when block fragmentation is turned on. Other
> issues need further investigation.
> 
> Bug: 714962
> Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
> Change-Id: I14d44ca10fd23726f2c08be45b10c2b0abe16bf7
> Reviewed-on: https://chromium-review.googlesource.com/1250685
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#595051}

TBR=kojii@chromium.org,mstensho@chromium.org

Change-Id: Id550d1f9cafa348eebf378e2aeb7c213cf16a75f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Reviewed-on: https://chromium-review.googlesource.com/1251228
Reviewed-by: François Doray <fdoray@chromium.org>
Commit-Queue: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595071}
[modify] https://crrev.com/bfa98748db2e4adf33cb84100c7496ece735e91b/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/bfa98748db2e4adf33cb84100c7496ece735e91b/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm.cc

Project Member

Comment 160 by bugdroid1@chromium.org, Sep 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2b33b53351841caa993e404712c7eda7e42a2668

commit 2b33b53351841caa993e404712c7eda7e42a2668
Author: Koji Ishii <kojii@chromium.org>
Date: Fri Sep 28 18:17:10 2018

Reland "[LayoutNG] Make constraint space for column balancing intermediate"

This is a reland of 5cae37b5f84223f8f361d3dfaf639d6b85fdf37b

Two tests that were changed from Failure to Crash turned out
to be flaky, they do not crash on linux-xenial-rel.
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/linux-xenial-rel/3698

Original change's description:
> [LayoutNG] Make constraint space for column balancing intermediate
>
> Fragment caching and paint needs to know if fragments created
> for a constraint space are for the regular layout that are to
> be painted, or it's for intermediate computation.
>
> Since the layout results for column balancing should not be
> painted, this patch marks so.
>
> This change alone doesn't fix all weird paint data
> inconsistencies when block fragmentation is turned on. Other
> issues need further investigation.
>
> Bug: 714962
> Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
> Change-Id: I14d44ca10fd23726f2c08be45b10c2b0abe16bf7
> Reviewed-on: https://chromium-review.googlesource.com/1250685
> Commit-Queue: Koji Ishii <kojii@chromium.org>
> Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#595051}

TBR=mstensho@chromium.org

Bug: 714962, 890326
Change-Id: I3ed406ee0ab34f63e3c5b6a7352dac44274014f9
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Reviewed-on: https://chromium-review.googlesource.com/1251682
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595159}
[modify] https://crrev.com/2b33b53351841caa993e404712c7eda7e42a2668/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/2b33b53351841caa993e404712c7eda7e42a2668/third_party/blink/renderer/core/layout/ng/ng_column_layout_algorithm.cc

Project Member

Comment 161 by bugdroid1@chromium.org, Oct 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1880a97b3a2021e3848e3d791b31836ed3c64f45

commit 1880a97b3a2021e3848e3d791b31836ed3c64f45
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Oct 03 16:17:21 2018

[LayoutNG] Change to FullPaintInvalidation on all objects from Subtree FullPaintInvalidation

LayoutNG used to apply Subtree paint invalidation for new
NGPaintFragment, because fragments are always replaced with
new ones. With recent changes to reuse NGPaintFragment, we
can start exploring to do less paint invalidations.

This patch changes Subtree to FullPaintInvalidation on all
objects. There might be cases where we can do even less, but
this change:
* paint/invalidation test results match better to legacy.
* Fixes 4 paint/invalidation/css-grid-layout by not
  invalidating inline formatting context container.

The impact on blink_perf/paint is unclear. It looks like
large-table-background-change-with-* and some other tests are
flaky, and this change does not seem to have much impacts on
blink_perf/paint. Still the paint/invalidation tests indicate
we invalidate less with this change.

Ran the pinpoint 3 times on the same code. On the first try:
https://pinpoint-dot-chromeperf.appspot.com/job/12d257d8e40000
one test regressed by 11.5% while not much changes in others.

On the second try:
https://pinpoint-dot-chromeperf.appspot.com/job/11f8d4c2e40000
the regressed test above improved by 8.9%, another by 9.2% and
2.5%.

On the third try:
https://pinpoint-dot-chromeperf.appspot.com/job/1723022ce40000
the two tests above improved by 18%, though
fixed-and-many-layers-scroll regresed by 5.6%.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I5b0db240c3d9f84ffb7f02d0f7bd7d0aa9b82296
Reviewed-on: https://chromium-review.googlesource.com/c/1250821
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#596246}
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/background/background-resize-height-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/block-no-inflow-children-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-3509-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-5699-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-6278-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/bugzilla-7235-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/clipped-relative-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/replaced-clipped-positioned-not-wrong-incremental-repainting-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-added-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-added-individual-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-removed-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/containing-block-removed-individual-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/iframe-inside-squashed-layer-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/invalidations-with-large-negative-margin-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/remove-squashed-layer-plus-move-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/compositing/repaint-via-layout-offset-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/crbug-371640-3-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/remove-inline-block-descendant-of-flex-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/flexbox/repaint-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/float-move-during-layout-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/gradients-em-stops-repaint-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/image/percent-size-image-resize-container-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/inline-reflow-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-2-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-8-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/lines-with-layout-delta-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/list-marker-2-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/offset-change-wrong-invalidation-with-float-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/clipped-overflow-visible-subtree-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/float-overflow-right-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/overflow/line-overflow-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/absolute-margin-change-repaint-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/containing-block-position-change-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/inline-relative-positioned-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/layout-state-relative-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/layoutstate-invalid-invalidation-inline-relative-positioned-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-document-element-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-great-grandparent-change-location-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/position/positioned-list-offset-change-repaint-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/push-block-with-first-line-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/quotes-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/reflection/reflection-with-rotation-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/remove-inline-after-layout-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/repaint-descandant-on-ancestor-layer-move-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/resize-iframe-text-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/fixed-after-scroll-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/fixed-child-of-transformed-move-after-scroll-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset2-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/layout-state-scrolloffset3-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/line-in-scrolled-clipped-block-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-move-after-scroll-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-body-appear-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/overflow-scroll-delete-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/scroll/resize-scrollable-iframe-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selected-replaced-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/selection/selection-clear-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/subtree-root-skipped-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/absolute-sized-content-with-resources-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/add-outline-property-on-root-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/object-sizing-no-width-height-change-content-box-size-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-content-with-resources-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-deep-shadow-tree-content-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-image-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-inner-svg-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-shadow-tree-content-with-symbol-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-on-symbol-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/relative-sized-use-without-attributes-on-symbol-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/remove-outline-property-on-root-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/scrolling-embedded-svg-file-image-repaint-problem-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/svg/svg-image-change-content-size-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-repaint-percent-size-cell-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-repaint-vertical-align-cell-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/resize-table-row-repaint-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/table/table-collapsed-border-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-append-dirty-lines-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/text-match-document-change-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/transform/invalidation-with-scale-transform-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/transform/transform-layout-repaint-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/vertical-align-length1-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/vertical-align-length2-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/vertical-align1-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/vertical-align2-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-centered-inline-under-fixed-pos-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-no-layout-change2-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-percent-width-height-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-positioned-bottom-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-positioned-percent-top-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-vertical-writing-mode-expected.txt
[delete] https://crrev.com/61db177155a65fc322dc41f9d4fe022530a72f8c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/window-resize/window-resize-viewport-percent-expected.txt
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/blink/renderer/core/layout/ng/layout_ng_mixin.cc
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/1880a97b3a2021e3848e3d791b31836ed3c64f45/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 162 by bugdroid1@chromium.org, Oct 18

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c447aa55ca51a3b4eaa7dade699e557fa1606c0e

commit c447aa55ca51a3b4eaa7dade699e557fa1606c0e
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Oct 18 06:07:00 2018

[LayoutNG] Use one-way linked list for NGPaintFragment.Children()

The primary motivation is to save memory usage. It may
improve memory locallity, but will make reversed-
iteration slower.

This is in company with using one-way linked list for
NGPhysicalFragment in http://crrev.com/c/1284469.

Bug: 714962
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ie17e566d3c66bd4a2f6f1f24e575e7a1494c1639
Reviewed-on: https://chromium-review.googlesource.com/c/1284469
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Yoichi Osato <yoichio@chromium.org>
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#600670}
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/editing/inline_box_traversal.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/editing/layout_selection.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/editing/layout_selection_test.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_box_fragment_painter.h
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_fieldset_painter.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment_test.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment_traversal.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment_traversal.h
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_paint_fragment_traversal_test.cc
[modify] https://crrev.com/c447aa55ca51a3b4eaa7dade699e557fa1606c0e/third_party/blink/renderer/core/paint/ng/ng_text_fragment_painter_test.cc

Project Member

Comment 163 by bugdroid1@chromium.org, Oct 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1360b9ba78ce923eee03336a18db0c2fa89aa1f7

commit 1360b9ba78ce923eee03336a18db0c2fa89aa1f7
Author: Koji Ishii <kojii@chromium.org>
Date: Tue Oct 30 06:41:55 2018

[LayoutNG] Rebaseline paint/invalidation/clip/control-clip.html

The triage agreed that we can live with invalidating the
<select> control when <option>.innerText is changed, at
leaast for the phase 1.

TBR=eae@chromium.org, atotic@chromium.org
NOTRY=true

Bug: 714962
Change-Id: I15bf4b343cebcdb3f4244a605ac0a41ad4007e59
Reviewed-on: https://chromium-review.googlesource.com/c/1306962
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#603809}
[modify] https://crrev.com/1360b9ba78ce923eee03336a18db0c2fa89aa1f7/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/1360b9ba78ce923eee03336a18db0c2fa89aa1f7/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/clip/control-clip-expected.txt

Project Member

Comment 164 by bugdroid1@chromium.org, Oct 31

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5dfd953d2c5395661c93aa9c137fb25ec856764f

commit 5dfd953d2c5395661c93aa9c137fb25ec856764f
Author: Koji Ishii <kojii@chromium.org>
Date: Wed Oct 31 03:13:43 2018

[LayoutNG] Rebaseline paint/invalidation/line-flow-with-floats-*

This patch rebaselines paint invalidation test results for
when floats within an inline formatting context changed,
because our reuse-line-box in phase 1 is not going to support
when there are floats/oof in the inline formatting context.

Bug: 714962
Change-Id: I617a4e198d3dfa0b70b22356074451392d9ed748
Reviewed-on: https://chromium-review.googlesource.com/c/1307031
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604130}
[modify] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-1-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-10-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-3-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-4-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-5-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-6-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-7-expected.txt
[add] https://crrev.com/5dfd953d2c5395661c93aa9c137fb25ec856764f/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/paint/invalidation/line-flow-with-floats-9-expected.txt

Project Member

Comment 165 by bugdroid1@chromium.org, Nov 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/53df9899959f265a42c78d9da6f9c1d686b08a9c

commit 53df9899959f265a42c78d9da6f9c1d686b08a9c
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Nov 01 03:55:19 2018

[LayoutNG] Change FragmentRange to use shared code

This patch changes NGPaintFragment::FragmentRange to use the
generic range/iterator in NGPaintFragment::List/iterator.

Also changed the naming to match to std iterator.

No behavior changes.

Bug: 714962
Change-Id: I0df61e989949dff1e404928b23e124227cafec3c
Reviewed-on: https://chromium-review.googlesource.com/c/1309953
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604512}
[modify] https://crrev.com/53df9899959f265a42c78d9da6f9c1d686b08a9c/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc
[modify] https://crrev.com/53df9899959f265a42c78d9da6f9c1d686b08a9c/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.h

Project Member

Comment 166 by bugdroid1@chromium.org, Nov 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7ed64fb4ac5b9f90f9b1ea7412fa1f160a98bcfb

commit 7ed64fb4ac5b9f90f9b1ea7412fa1f160a98bcfb
Author: Koji Ishii <kojii@chromium.org>
Date: Thu Nov 01 16:13:26 2018

[LayoutNG] Add size warning for NGPaintFragment

This patch adds size warning for NGPaintFragment.

Currently, it is 128 bytes (208 bytes if DCHECK) on x64:
* 104 bytes for its own fields.
* 8 bytes for RefCounted<> (80 bytes if DCHECK).
* 8 bytes for DisplayItemClient (16 bytes if DCHECK).
* 8 bytes for ImageResourceObserver (a super class, even
  without any fields, adds 8 bytes minimum).

Bug: 714962
Change-Id: I5fdd26e61f742e61bcf7c74393677dd61c587d91
Reviewed-on: https://chromium-review.googlesource.com/c/1312437
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604604}
[modify] https://crrev.com/7ed64fb4ac5b9f90f9b1ea7412fa1f160a98bcfb/third_party/blink/renderer/core/paint/ng/ng_paint_fragment.cc

Summary: [LayoutNG] Paint inlines from fragment tree (was: [LayoutNG] Paint from fragment tree)
Status: Fixed (was: Available)
Project Member

Comment 170 by 42576172...@developer.gserviceaccount.com, Today (17 hours ago)

Project Member

Comment 171 by 42576172...@developer.gserviceaccount.com, Today (17 hours ago)

Project Member

Comment 172 by 42576172...@developer.gserviceaccount.com, Today (16 hours ago)

Project Member

Comment 173 by 42576172...@developer.gserviceaccount.com, Today (16 hours ago)

Project Member

Comment 174 by 42576172...@developer.gserviceaccount.com, Today (15 hours ago)

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/138826e9540000
Project Member

Comment 175 by 42576172...@developer.gserviceaccount.com, Today (15 hours ago)

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/1257fabe540000
Project Member

Comment 176 by 42576172...@developer.gserviceaccount.com, Today (15 hours ago)

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/1792b535540000
Project Member

Comment 177 by 42576172...@developer.gserviceaccount.com, Today (15 hours ago)

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/17effe59540000
Showing comments 78 - 177 of 177 Older

Sign in to add a comment