[LayoutNG] Refactor of NGLineBreaker.
This patch does a few things because I got slightly carried away:
- Removes the fact that NGLineBreaker takens an NGInlineAlgorithm as an
argument.
- Has better logic around resolving the BfcOffset of the container and
positioning floats. We were previously doing this incorrectly.
Specifically resolving too early if we just had floats.
- Removes the available_width_ class member and makes it a stack
allocated WTF::Optional for clarity now.
- Tries to simplify a few other things.
BUG=635619
Review-Url: https://codereview.chromium.org/2930963002
Cr-Commit-Position: refs/heads/master@{#479016}
9 files changed