Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Part 3 - Adjust GetLogicalSkipSides() to check non-fluid continuations.
Frames split by column-span are linked together by non-fluid continuations. We want GetLogicalSkipSides() to recognize that. The documentation in nsIFrame::GetLogicalSkipSides() already uses *continuation* rather than *in-flow*, so no need to adjust the wording. However, after patching GetLogicalSkipSides(), the first column-content after a column-span split starts to skip the block-start side because it has a previous continuation. We want the content in the first column to consider applying its block-start margin. Hence the modification in BlockReflowInput's constructor. (Note that the first column-content is always a block-start margin-root, which is fixed in the previous part.) This is necessary to avoid breaking testing/web-platform/tests/css/css-multicol/multicol-span-all-margin-bottom-001.xht In multicol-span-all-children-height-006.html, add "margin-top: 1em;" to the container to expose the bug if we still check GetPrevInFlow() rather than GetPrevContinuation() when computing applyBStartMargin in nsBlockFrame::ReflowBlockFrame(). Differential Revision: https://phabricator.services.mozilla.com/D43905 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1523582 gecko-commit: be8883d72832f83fab1f4bb4bb1c1f5adfa59070 gecko-integration-branch: autoland gecko-reviewers: dbaron
- Loading branch information