[LayoutNG] Lay out OOFs in inner multicol during nested fragmentation This CL is the first of several to add support for OOF layout in a nested fragmentation context. To allow the OOF elements to get added to the inner multicol rather than the outermost, a new builder and constraint space are created for the inner multicol. Doing so also allows us to re-use the existing OOF code with minimal effort. Once the OOFs have been laid out and the new column fragments are created, we need to replace the associated column fragments inside the existing multicol fragment (instead of inside the builder itself). In order to accomplish this, I've exposed a mutable accessor to the children of a physical fragment. A simple unit test was added to illustrate what is currently working. It appears that the static position is not quite right yet, and there is another related unit test that is hitting a DCHECK. These will be addressed in follow-up changes, along with a few other added TODOs (as well as additional testing). Bug: 1079031 Change-Id: Ia529fd13b574797888deb19f7c5315eea6d9c906 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2674410 Commit-Queue: Alison Maher <almaher@microsoft.com> Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Cr-Commit-Position: refs/heads/master@{#852223}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.