Rename so that its naming is consistent with ReflowConfig::mColISize,
and to avoid confusion with ColumnBalanceData::mMaxBSize.
Differential Revision: https://phabricator.services.mozilla.com/D88697
The motivation is to replace mFrames.GetLength() in
FindBestBalanceBSize() since it is O(N), where N is the number of
columns.
Also, counting the column number from 1 so that it matches mUsedColCount
without needing to subtract 1 at some places.
Differential Revision: https://phabricator.services.mozilla.com/D80569
They were used when nsColumnSetFrame was still a column container, but
are not used today.
Differential Revision: https://phabricator.services.mozilla.com/D64647
--HG--
extra : moz-landing-system : lando
This patch makes fragmentation in "column-fill:auto" mode possible.
Note that we only bail out of creating more column contents when
"column-fill:auto" mode is set from the styles, i.e. when mForceAuto is
false. That is because when mForceAuto is true, we usually in the case
where we have gave up balancing, and we really want to create overflow
columns.
Note: without `!aConfig.mForceAuto` check, 673770.html can generated
assertions, and the frame tree contains dangling Overflow-lines and
ExcessOverflowContainersList.
Differential Revision: https://phabricator.services.mozilla.com/D47005
--HG--
extra : moz-landing-system : lando
mUsedColCount is used in balancing mode to check whether we have created
the maximum number of columns when the content cannot fit. Similarly,
mUsedColCount can also be useful in "column-fill:auto" mode to improve
the fragmentation story in the next patch.
This patch doesn't change the behavior (yet).
Differential Revision: https://phabricator.services.mozilla.com/D47004
--HG--
extra : moz-landing-system : lando
In next patch, this variable won't be set to INT32_MAX in
"column-fill:auto" mode, and it will be used in Part 4. Hence the
rename.
Differential Revision: https://phabricator.services.mozilla.com/D47003
--HG--
extra : moz-landing-system : lando
For now, always pass null, except when passing it through from one
overload to another.
Differential Revision: https://phabricator.services.mozilla.com/D38389
--HG--
extra : moz-landing-system : lando
Also, move GetAvailableContentBSize() to non-public section because it's
only used by nsColumnSetFrame.
Differential Revision: https://phabricator.services.mozilla.com/D28014
--HG--
extra : moz-landing-system : lando
ColumnBalanceData is reset in the beginning of ReflowChildren(), so I
make ReflowChildren() return a fresh ColumnBalanceData so that it's
easier (at least for me) to understand the data is recomputed in
every reflow iteration.
Also, FindBestBalanceBSize() uses ColumnBalanceData as an input to begin
its column balancing iteration. Make the argument pass by value so that
the caller's copy won't be modified.
Differential Revision: https://phabricator.services.mozilla.com/D28013
--HG--
extra : moz-landing-system : lando
I manually search "height" and replace it with "block-size" if the code
around it uses logical coordinates.
Differential Revision: https://phabricator.services.mozilla.com/D28012
--HG--
extra : moz-landing-system : lando
No code after FindBestBalanceBSize() is interested in
aUnboundedLastColumn and aRunWasFeasible, so they don't need to be
input/output arguments.
Differential Revision: https://phabricator.services.mozilla.com/D28009
--HG--
extra : moz-landing-system : lando
Also, remove the unused NS_BLOCK_MARGIN_ROOT flag set on nsColumnSetFrame.
Differential Revision: https://phabricator.services.mozilla.com/D8783
--HG--
extra : moz-landing-system : lando
The original statement is neat, but one cannot easily associates the values
computed in ChooseColumnStrategy with the actually field name in ReflowConfig.
Remove the aFeasibleBSize and aInfeasibleBSize for ChooseColumnStrategy()
because they're not used.
Differential Revision: https://phabricator.services.mozilla.com/D9467
--HG--
extra : moz-landing-system : lando
This is followup to bug 1361668, and is just cleanup in advance of the
patch to fix this bug.
MozReview-Commit-ID: 4HOKLA5WYNq
--HG--
extra : rebase_source : dc6ceb81cc6c19b5ab8a79d10812501bc0f525df
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py
For every file that is modified in this patch, the changes are as follows:
(1) The patch changes the file to use the exact C++ mode lines from the
Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line
(2) The patch deletes any blank lines between the mode line & the MPL
boilerplate comment.
(3) If the file previously had the mode lines and MPL boilerplate in a
single contiguous C++ comment, then the patch splits them into
separate C++ comments, to match the boilerplate in the coding style.
MozReview-Commit-ID: EuRsDue63tK
--HG--
extra : rebase_source : 3356d4b80ff6213935192e87cdbc9103fec6084c