Add left_offset to NGFloatingObject and set it on legacy FloatingObject

This patch adds the support of the next use case:
When a float are surrounded by a bunch of empty divs we attach it to the
next in-flow child that can determine its position in space. We need to
copy 2 offsets to the legacy tree:
1) Float's LayoutObject offset relative to its gunuine parent
2) Float's FloatingObject offset relative to its real parent so
   BlockFlowPainter can paint it correctly

List of changes:
- Add left_offset to NGFloatingObject. This will be set to
  FloatingObject
- Add parent_space to NGFloatingObject. This is used to calculate
  offset relative to the genuine parent.
- PositionFloat uses origin_point/from_offset with inline_offset
  that comes from float's and float's parent constraint spaces.
- Enable NGBlockLayoutAlgorithmTest::PositionFloatInsideEmptyBlocks

BUG=635619
TEST=NGBlockLayoutAlgorithmTest::PositionFloatInsideEmptyBlocks

Review-Url: https://codereview.chromium.org/2679343004
Cr-Commit-Position: refs/heads/master@{#449774}
5 files changed