[LayoutNG] Stop using legacy layout for DETAILS / SUMMARY.
NG seems to support it just fine, but was prevented from doing so by two things: We forced legacy layout on the subtree. AND we unconditionally created (legacy) LayoutBlockFlow rather than LayoutNGBlockFlow. Use the factory to create the right object type. DETAILS does not establish a new formatting context, making it a rather lousy entry-point for legacy layout. This requires some rebaselining, due to cases of off by ~0.02px and also the fact that NG creates fewer and larger text runs. There are also fewer spaces than before in a couple of text dumps, apparently. This fixes one crasher, but also introduces two failures; one which is not related to DETAILS / MARKER, but rather how we deal with hit-testing inside a vertical-rl container. The other one is a paint/invalidation/ tests that behaves different from legacy now, because it has DETAILS / MARKER in it. fast/multicol/span/summary-split.html now fails again with NG block fragmentation. It recently started to pass, because of https://chromium-review.googlesource.com/c/chromium/src/+/1063891 , but that was just because the legacy DETAILS element forced the entire multicol container to be done with legacy. The actual problem here is that NG block fragmentation doesn't support column-span:all and never has. Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng Change-Id: I823b5cd2ce62240b820428302556ee6df64c8b22 Reviewed-on: https://chromium-review.googlesource.com/1114847Reviewed-by:Koji Ishii <kojii@chromium.org> Reviewed-by:
Emil A Eklund <eae@chromium.org> Commit-Queue: Morten Stenshorne <mstensho@chromium.org> Cr-Commit-Position: refs/heads/master@{#570678}
Showing
Please register or sign in to comment