Only allow positioned objects to be relayout boundaries.
Layout now generates some paint information on physical fragments. Specifically (for this bug at least) if a sub-tree contains any floats. This conflicted with the relayout boundary optimization. If a float was added we wouldn't paint it, as we'd stop layout at the relayout boundary, not telling the parent fragments that this subtree contained a float. This patch only allows relayout boundaries to occur at positioned objects which always have self painting layers (which is the most common self painting layer). For the sites that I found which use this optimization (devtools, facebook, bing) all occur on a positioned object. Bug: 1049973 Change-Id: Iafaf68bf9642788a71e8f882a154e6acd7cbef46 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076078 Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org> Reviewed-by:Koji Ishii <kojii@chromium.org> Reviewed-by:
Morten Stenshorne <mstensho@chromium.org> Cr-Commit-Position: refs/heads/master@{#745302}
Showing
Please register or sign in to comment