[LayoutNG] Exclude trailing preserved spaces when avoiding floats

This patch fixes an interoperability issue where trailing
preserved spaces should be excluded when avoiding floats.
All 4 implementations are interoperable on this regard.

This patch adds NGLineInfo::HasOverflow(), because knowing
whether the line has overflow or not is easy and fast,
while knowing the exact inline size excluding trailing
preserved spaces may involve reshaping.

Other cases also have interoperability problems, such as
`text-align` or `min-content`. I'll investigate them in
following patches.

Bug: 913995
Change-Id: Ibf13f1fcc28bbd99d44b56611141efa49d6d1c89
Reviewed-on: https://chromium-review.googlesource.com/c/1374329
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616155}
7 files changed