[LayoutNG] Ensure ChildNeedsLayoutOverflowRecalc flags are cleared after layout

It's expected that ChildNeedsLayoutOverflowRecalc flag is cleared
after layout, however that was not happening.

In LayoutNG the involved code is in NGBlockNode.
In CopyFragmentDataToLayoutBox() there is a call to
SetNeedsOverflowRecalc() that was setting
ChildNeedsLayoutOverflowRecalc flag on the container chain
and then clearing it just in the next line with the call to
ComputeLayoutOverflow().

To fix this we add a new method
SetNeedsVisualOverflowAndPaintInvalidation()
and use it instead of SetNeedsOverflowRecalc().
That way the flag ChildNeedsLayoutOverflowRecalc is not set.

BUG=941180
TEST=LayoutObjectTest.NeedsLayoutOverflowRecalc

Change-Id: I41042fa6b750a5a0bd334cf4be03b78688b6712b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1828902
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: Manuel Rego <rego@igalia.com>
Cr-Commit-Position: refs/heads/master@{#702352}
4 files changed