summaryrefslogtreecommitdiffstats
path: root/device
diff options
context:
space:
mode:
authormstensho <mstensho@opera.com>2016-02-24 02:08:17 -0800
committerCommit bot <commit-bot@chromium.org>2016-02-24 10:09:22 +0000
commit3f96177578cf0511174d42546a70660cc8d6eeeb (patch)
tree4cc875aff12976ef8b1f801b403dc950f81119aa /device
parent80478c4257e298248e380b62e941ab4c2f775b12 (diff)
downloadchromium_src-3f96177578cf0511174d42546a70660cc8d6eeeb.zip
chromium_src-3f96177578cf0511174d42546a70660cc8d6eeeb.tar.gz
chromium_src-3f96177578cf0511174d42546a70660cc8d6eeeb.tar.bz2
Ability to return the height of fragmentainer groups that don't yet exist.
When the flow thread offset is out of range (i.e. it comes after the logical bottom of the last fragmentainer group created so far) when asking for a column height, estimate how tall the next fragmentainer group will be, instead of returning the height of the last fragmentainer group. It was dodgy of LayoutBlockFlow::adjustLinePositionForPagination() to call paginatedContentWasLaidOut() before the final position of the line had been determined, but we did so in order to create the necessary fragmentainer groups, so that we could get the right column height. However, since we may decide to drop the strut calculated if a line is taller than the column, we'd better not pretend that we applied the strut. Otherwise we may create more fragmentainer groups than necessary, causing mild confusion and assertion failures in the multicol machinery. To fix this, we need LayoutBlock::pageLogicalHeightForOffset() to be able to return the height of columns in a fragmentainer group that has't yet been created (and perhaps never will). The rationale behind this solution is that it seems better to deal with this inside the multicol implementation, than to add more complexity in adjustLinePositionForPagination(). Leaving LayoutBlockFlow blissfully unaware of multiple fragmentainer groups seems like a good thing. BUG=552615 Review URL: https://codereview.chromium.org/1710843003 Cr-Commit-Position: refs/heads/master@{#377256}
Diffstat (limited to 'device')
0 files changed, 0 insertions, 0 deletions