I don't know if it's correct to do this (it doesn't seem very useful or correct to me, though). It's either a bug, or fast/block/positioning/056.html needs to be changed to disable kerning. See attached demo/test.
Oh yeah, we should not do that.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d26990296058a2d7a2cf2b0f005ca1f1e8902068 commit d26990296058a2d7a2cf2b0f005ca1f1e8902068 Author: Morten Stenshorne <mstensho@chromium.org> Date: Mon Feb 26 21:59:24 2018 [LayoutNG] fast/block/positioning/056.html is a kerning issue. TBR=eae@chromium.org Bug: 816614 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng Change-Id: Icc16b53ce783c24072901a9d1ddb658e8c54f589 Reviewed-on: https://chromium-review.googlesource.com/938401 Commit-Queue: Morten Stenshorne <mstensho@chromium.org> Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Cr-Commit-Position: refs/heads/master@{#539277} [modify] https://crrev.com/d26990296058a2d7a2cf2b0f005ca1f1e8902068/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4429e98dc0c93c876be7992f00938b9229b3f60c commit 4429e98dc0c93c876be7992f00938b9229b3f60c Author: Koji Ishii <kojii@chromium.org> Date: Wed Feb 28 16:12:12 2018 [LayoutNG] Fix safe-to-break offset and its use at start of wrapped lines This patch fixes safe-to-break offset vector in ShapeResult: 1. Fixed before the first glyph of each run to be safe-to-break. 2. Fixed before the last glyph of each run not to force safe-to-break. 3. Fixed non-cluster boundaries were off by one. Also related, two fixes are made to NGLineBreaker: 1. When the whole item can fit, it does not consider when the start of the item is not safe-to-break. The optimized code path was removed to fix this. If this seems to hit performance, we can bring it back with safe-to-break support. 2. Add |start_should_be_safe| argument to ShapingLineBreaker to make the start of wrapped line safe-to-break, but not the middle of a wrapped line (i.e., when there are previous items.) HarfBuzzShaperTest.SafeToBreakLatinDiscretionaryLigatures was fixed to match to what HarfBuzz returns as HB_GLYPH_FLAG_UNSAFE_TO_BREAK. This change causes a crash in fast/inline/absolute-positioned-inline-in-centred-block.html This is from an issue in HarfBuzzShaper, tracked in issue 817271 . Bug: 816614 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng Change-Id: Id55ea10f0b6f879981e3725b7cac027b39f3f213 Reviewed-on: https://chromium-review.googlesource.com/939942 Commit-Queue: Koji Ishii <kojii@chromium.org> Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Reviewed-by: Dominik Röttsches <drott@chromium.org> Cr-Commit-Position: refs/heads/master@{#539839} [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/classification/list_style_position-expected.png [add] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css1/font_properties/font_variant-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1505-c524-font-var-00-b-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1505-c524-font-var-00-b-expected.txt [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css2.1/t1602-c546-txt-align-00-b-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-41-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/html/css3-modsel-41a-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-41-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xhtml/css3-modsel-41a-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-41-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/css3/selectors3/xml/css3-modsel-41a-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/fast/text/atomic-inline-before-ellipsis-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/flag-specific/enable-blink-features=LayoutNG/tables/mozilla/bugs/bug8411-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/float/021-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/101-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/LayoutTests/platform/mac/virtual/layout_ng/fast/block/margin-collapse/102-expected.png [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/core/layout/ng/inline/ng_inline_node_test.cc [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/core/layout/ng/inline/ng_line_breaker.cc [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/platform/fonts/shaping/HarfBuzzShaperTest.cpp [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/platform/fonts/shaping/ShapeResult.cpp [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/platform/fonts/shaping/ShapingLineBreaker.cpp [modify] https://crrev.com/4429e98dc0c93c876be7992f00938b9229b3f60c/third_party/WebKit/Source/platform/fonts/shaping/ShapingLineBreaker.h
Comment 1 by e...@chromium.org
, Feb 26 2018