[LayoutNG] Fix first-line background when applied later

LayoutNG creates an anonymous inline wrapper when
::first-line has background, so that paint code can handle it
the same way as other boxes.

Because of that, when ::first-line was applied after the box
was once laid out, such block needs to reattach to insert the
anonymous inline wrapper.

This patch should have been needed, but all tests used to
pass without this, probably we didn't have such tests.
Recently 3 tests started to fail. This patch fixes them.

DCHECKs to avoid splitting anonymous inlines added in r521673
(CL:806158) are adjusted to allow splitting anonymous wrapper
for ::first-line.

Bug: 636993
Change-Id: Ib1e51f0f77c759761b31abe8cc0e2973caa77d92
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Reviewed-on: https://chromium-review.googlesource.com/c/1345676
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611097}
6 files changed