Tracking bug for painting directly from the LayoutNG fragment tree.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Just past by accidentally.. Is "y: x" a typo here? https://cs.chromium.org/chromium/src/third_party/WebKit/LayoutTests/fast/dom/inert/inert-inlines.html?rcl=39296e726ce046a4b94719ba131a0714c3ce4e5e&l=32
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/05fbd62486d57c756e9604eabaa5a899dc6134de commit 05fbd62486d57c756e9604eabaa5a899dc6134de Author: Emil A Eklund <eae@chromium.org> Date: Fri Nov 30 00:13:14 2018 [LayoutNG] Rebaseline languages-emoji-rare-glyphs.js Bug: 714962 Change-Id: I6c483d176f4cf2189a15bd7d7ca3f1a452696adc Tbr: kojii@chromium.org Reviewed-on: https://chromium-review.googlesource.com/c/1355988 Reviewed-by: Emil A Eklund <eae@chromium.org> Commit-Queue: Emil A Eklund <eae@chromium.org> Cr-Commit-Position: refs/heads/master@{#612454} [modify] https://crrev.com/05fbd62486d57c756e9604eabaa5a899dc6134de/third_party/blink/web_tests/FlagExpectations/enable-blink-features=LayoutNG [add] https://crrev.com/05fbd62486d57c756e9604eabaa5a899dc6134de/third_party/blink/web_tests/flag-specific/enable-blink-features=LayoutNG/inspector-protocol/layout-fonts/languages-emoji-rare-glyphs-expected.txt
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/1257fabe540000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/138826e9540000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/1792b535540000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/17effe59540000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/138826e9540000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/1257fabe540000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/1792b535540000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/17effe59540000