Precomputing the skipBEnd bit is odd / wrong. Using the PreReflow
version causes no regression, and allows us to simplify the code.
It also reverts the test annotations added to bug 1675376 which were
caused by the extra argument to GetLogicalSkipSides() somehow.
Differential Revision: https://phabricator.services.mozilla.com/D97418
The original code doesn't work for "writing-mode:vertical-rl" because
its block flow direction is the opposite of "writing-mode:vertical-lr."
Differential Revision: https://phabricator.services.mozilla.com/D96786
Changing the size or number of layers of textures unfortunately usually leads to small sampling differences which requires fixing in the refetest references.
Differential Revision: https://phabricator.services.mozilla.com/D95680
First, copy the "vertical-lr" reftests added in Part 3, then running the
following command to convert to `writing-mode: vertical-rl` for all the
reftests.
```
rg -l "vertical-lr" flexbox-*vertical-rl* | xargs sed -i "s/vertical-lr/vertical-rl/g"
```
reftest.list are modified manually.
Differential Revision: https://phabricator.services.mozilla.com/D96742
First, copy the original reftests, then running the following command to
add `writing-mode: vertical-lr` to all the reftests, and modify `<link>`
tag.
```
function rename () {
rg -l "$1" flexbox-*vertical-lr* | xargs sed -i "s/$1/$2/g"
}
rename "<style>" "<style>\n html \{\n writing-mode: vertical-lr;\n \}"
rename "single-column" "single-column-vertical-lr"
rename "multi-column" "multi-column-vertical-lr"
rename "single-row" "single-row-vertical-lr"
rename "multi-row" "multi-row-vertical-lr"
```
reftest.list are modified manually.
Differential Revision: https://phabricator.services.mozilla.com/D96741
Changing the size or number of layers of textures unfortunately usually leads to small sampling differences which requires fixing in the refetest references.
Differential Revision: https://phabricator.services.mozilla.com/D95680
There appears to be a substantial overhead for trying to wake cold threads
from a thread pool (especially with rayon), so for now let's leave the existing
thread spawning in place, but reduce the stack size for individual threads.
Since these threads only call into SWGL's composite routines and do little else,
there isn't much harm in having a small stack size.
Differential Revision: https://phabricator.services.mozilla.com/D96748
... which is an array of pairs of ranges, and use it instead of the
existing printRange / startPage / endPage settings.
Differential Revision: https://phabricator.services.mozilla.com/D96093
Changing the size or number of layers of textures unfortunately usually leads to small sampling differences which requires fixing in the refetest references.
Differential Revision: https://phabricator.services.mozilla.com/D95680
This affects a few of the examples in the text/white-space-2 reftest, but the changes look sensible;
more significantly from an interop point of view, there are specific web-platform reftests that are
currently failing, but will pass after the patch.
Differential Revision: https://phabricator.services.mozilla.com/D95811
Instead, sort stuff using CSSOrderAwareFrameIterator. The current
sorting is broken in presence of dynamic insertions, consider the
following <Child(order)> combination in the DOM:
<A(1000)> <B(0)>
That'd look like:
<B(0)> <A(1000)>
On the frame tree. However when appending a child before B so that the
DOM looks like:
<A(1000)> <C(0)> <B(0)>
The frame constructor will properly insert after A, and the reordering,
which is stable, will end up with:
<B(0)> <C(0)> <A(1000)>
Which is the wrong frame tree order.
We only use -moz-box-ordinal-group in regular sprocket layout, so just
handle it there rather than everywhere. Similarly, we only rely on it
for in-flow stuff, so remove the test for that added in bug 877890 (flex
changed behavior afterwards, interestingly enough).
Differential Revision: https://phabricator.services.mozilla.com/D94790
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045