This implements a CSSWG resolution in this issue:
https://github.com/w3c/csswg-drafts/issues/5081
This also effectively backs out our changes from
https://bugzilla.mozilla.org/show_bug.cgi?id=1473047
which is where we implemented our current behavior.
Note that there's no change for column-gap behavior, because this resolution is
only about block-axis sizes, which is always the "row"/row-gap axis (regardless
of the flex container's orientation / writing-mode).
I'm fixing the reftest that we have on this behavior to expect that all of its
row-gaps (which are all in the affected category) resolve to 0; and I'm
adjusting our expectations for its WPT reimport to expect failure until the
test changes have made the roundtrip back into our WPT reimport.
(Thanks to David Grogan for the new informational <link> & <meta>-tags in the
testcase.)
Differential Revision: https://phabricator.services.mozilla.com/D76186
This is used by platforms with overlay scrollbars, only in order to
reserve enough space for the chevron of the `<select>` element.
So our general min-widget-size, which is the same as for scrollbars
works.
Differential Revision: https://phabricator.services.mozilla.com/D71825
i.e. remove annotations that manually enable the property, and remove the
property_database.js check that tests for the property being enabled.
We've been shipping with the property enabled ever since Firefox 69, so we're
realistically not going to default-disable it at this point, which means these
annotations (and the property_database.js check) are just cruft.
Differential Revision: https://phabricator.services.mozilla.com/D69128
I suspect the number of texture array layers impacts some arithmetic realted to how the GL implementation deals with texture coordinates. These refetests started failing more consistently (though not 100% of the time) with the patch that sets the number of rgba8 linear texture array laters to 16.
Differential Revision: https://phabricator.services.mozilla.com/D67863
--HG--
extra : moz-landing-system : lando
Reuse the AddXULMinSize logic which already deals with all the widget stuff,
non-themed scrollbars, etc.
Remove some useless margin declarations and such in GeckoView scrollbars code
now that AddXULMinSize does look at the min-width/height properties.
Differential Revision: https://phabricator.services.mozilla.com/D65129
--HG--
extra : moz-landing-system : lando
The last css suite (css-writing-modes) is removed in Part 1. We can
remove the infrastructure.
Differential Revision: https://phabricator.services.mozilla.com/D62985
--HG--
extra : moz-landing-system : lando
See bug 1598754 comment 1 for an analysis and observation after aligning
the pass/fail state with wpt.
This patch is generated by
1. removing `os.path.join("css-writing-modes"),` in import-tests.py.
2. removing the relevent annotations of css-writing-modes in failures.list.
3. running import-tests.py on a wpt repository at commit
15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Differential Revision: https://phabricator.services.mozilla.com/D62984
--HG--
extra : moz-landing-system : lando
With the new 'defaults' key being added, 'default-preferences' is now
redundant. This commit converts all existing uses of 'default-preferences' to
use 'defaults' instead.
Differential Revision: https://phabricator.services.mozilla.com/D63247
--HG--
extra : moz-landing-system : lando
This introduces a new 'defaults' key to reftest manifests. It works similarly
to the existing 'default-preferences' key except it can be used for any test
modifier (e.g, skip-if, fail-if, pref, etc.).
See the changes to README.txt in this commit for an explanation on how to use
it.
Differential Revision: https://phabricator.services.mozilla.com/D63246
--HG--
extra : moz-landing-system : lando
See bug 1598753 comment 1 for the analysis.
This patch is generated by
1. removing `os.path.join("css-values"),` in import-tests.py
2. removing the relevent annotations of css-values
3. running import-tests.py on a wpt repository at commit
15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Differential Revision: https://phabricator.services.mozilla.com/D62142
--HG--
extra : moz-landing-system : lando
No test in css-conditional reftests are failures, which matches
testing/web-platform/meta/css/css-conditional.
This patch is generated by
1. manually removing `os.path.join("css-conditional"),` in import-tests.py, and
2. running import-tests.py on a wpt repository at commit
15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Differential Revision: https://phabricator.services.mozilla.com/D61594
--HG--
extra : moz-landing-system : lando
There are a number of issues with the current gradient dithering
implementation, that cause many test failures and also fuzziness
rendering when enabling DirectComposition virtual surfaces. In
particular, the dither result is dependent on the offset of the
update rect within a render target.
For now, this patch disables gradient dithering by default. This
gives us:
- A heap of new test PASS results (or reduced fuzziness).
- Fixes a number of non-deterministic fuzziness bugs with DC.
- Improves performance of gradient rendering by a reasonable amount.
We can fix gradient dithering as a follow up, and re-enable if/when
we find content that would benefit from it significantly (we may
be able to improve gradients in other ways than dithering too).
Differential Revision: https://phabricator.services.mozilla.com/D60460
--HG--
extra : moz-landing-system : lando
bug 1598755 comment 1 contains an analysis to align wpt's test results
with our own reftest framework, so it is ok to remove these reftests.
In this patch, the manual modifications are
1. removing `os.path.join("selector"),` in import-tests.py, and
2. removing relevant annotations in failures.list.
Others parts are generated by running import-tests.py on a wpt
repository with commit 15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Depends on D58023
Differential Revision: https://phabricator.services.mozilla.com/D58024
--HG--
extra : moz-landing-system : lando
These reftests can be safely removed because all css-namespace tests are
pass in both received/reftest.list and wpt reftests (no
testing/web-platform/meta/css/css-namespaces folder).
The only manual modification in this patch are removing
`os.path.join("css-namespaces"),` in import-tests.py.
Others parts are generated by running import-tests.py on a wpt
repository with commit 15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Depends on D56376
Differential Revision: https://phabricator.services.mozilla.com/D56377
--HG--
extra : moz-landing-system : lando
When executing `./import-tests.py` in a python virtualenv, the path of
the python interpreter won't be at /usr/bin/python. By using
`/usr/bin/env python`, it works as the system can find a python
interpreter in $PATH.
Differential Revision: https://phabricator.services.mozilla.com/D56376
--HG--
extra : moz-landing-system : lando
Bug 1594937 comment 2 provides an analysis on why it is OK to remove
css-multicol reftests.
The manual modifications in this patch are:
- Remove `os.path.join("css-multicol")` in import-tests.py.
- Remove css-multicol lines in failures.list
- Migrate geckoview only failures annotations (bug 1558509) in failures.list
to wpt ini files.
- Add fuzzy-if annotation to dom/tests/reftest/bug453105.html for Android.
(bug 1600534)
Others parts are generated by running import-tests.py on a wpt
repository with commit 15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Differential Revision: https://phabricator.services.mozilla.com/D52928
--HG--
extra : moz-landing-system : lando
Bug 1594937 comment 2 provides an analysis on why it is OK to remove
css-multicol reftests.
The manual modifications in this patch are:
- Remove `os.path.join("css-multicol")` in import-tests.py.
- Remove css-multicol lines in failures.list
- Migrate geckoview only failures annotations (bug 1558509) in failures.list
to wpt ini files.
Others parts are generated by running import-tests.py on a wpt
repository with commit 15f199c91a72b0d51bf0a12b3b77827ecb5051ff.
Differential Revision: https://phabricator.services.mozilla.com/D52928
--HG--
extra : moz-landing-system : lando
The glyph pixel space in which we rasterized glyphs differed from how we
rendered the rasterized glyphs in the shader. They need to be in
agreement because the glyph subpixel offset selected during
rasterization depends on it. This patch should make the paths consistent
with each other.
Additionally, during animations, we now snap the reference frame
relative offset ignoring the impact of any animated transforms. This
helps with minimizing glyph wiggling during the transition.
Differential Revision: https://phabricator.services.mozilla.com/D51305
--HG--
extra : moz-landing-system : lando
The glyph pixel space in which we rasterized glyphs differed from how we
rendered the rasterized glyphs in the shader. They need to be in
agreement because the glyph subpixel offset selected during
rasterization depends on it. This patch should make the paths consistent
with each other.
Additionally, during animations, we now snap the reference frame
relative offset ignoring the impact of any animated transforms. This
helps with minimizing glyph wiggling during the transition.
Differential Revision: https://phabricator.services.mozilla.com/D51305
--HG--
extra : moz-landing-system : lando
Per the css-contain specification, size contained elements must be sized as if
they were empty. Up until now, we've been handling that by just using "0" as
the intrinsic size of some components, but that doesn't actually match the size
of a "true" empty select, which has some nonzero width from:
(a) the default inline-axis padding on the display frame (added in a rule for
the ::-moz-display-comboboxcontrol-frame pseudo, in forms.css).
(b) the width (inline-size) of the display frame's "placeholder" space
character, which has a small intrinsic width (but which really only exists
for *block-axis* sizing and alignment, when no option is selected from
the dropdown).
This patch addresses issue (a) by explicitly adding the display frame's
inline-axis padding to size-contained elements, and it addresses issue (b) by
changing to use a zero-width space character in empty select elements.
So: as of this patch, size-contained select elements are getting a little wider
(to address (a)), and empty select elements are also getting a little skinnier
(to address (b)), and they'll end up being the same width.
(I chose U+FEFF "zero-width non-breaking-space" since we were previously using
a non-breaking space character. I'm not sure if the non-breaking aspect matters,
but I figured I'd preserve that to be on the safe side.)
Differential Revision: https://phabricator.services.mozilla.com/D48791
--HG--
extra : moz-landing-system : lando
In 817406-4.html, `<body style="direction: rtl;">` needs to propagate up
to `<html>`, so we should compare its result to 817406-1-ref.html.
Differential Revision: https://phabricator.services.mozilla.com/D45482
--HG--
extra : moz-landing-system : lando
Per the css-contain specification, size contained elements must be sized as if
they were empty. Up until now, we've been handling that by just using "0" as
the intrinsic size of some components, but that doesn't actually match the size
of a "true" empty select, which has some nonzero width from:
(a) the default inline-axis padding on the display frame (added in a rule for
the ::-moz-display-comboboxcontrol-frame pseudo, in forms.css).
(b) the width (inline-size) of the display frame's "placeholder" space
character, which has a small intrinsic width (but which really only exists
for *block-axis* sizing and alignment, when no option is selected from
the dropdown).
This patch addresses issue (a) by explicitly adding the display frame's
inline-axis padding to size-contained elements, and it addresses issue (b) by
changing to use a zero-width space character in empty select elements.
So: as of this patch, size-contained select elements are getting a little wider
(to address (a)), and empty select elements are also getting a little skinnier
(to address (b)), and they'll end up being the same width.
(I chose U+FEFF "zero-width non-breaking-space" since we were previously using
a non-breaking space character. I'm not sure if the non-breaking aspect matters,
but I figured I'd preserve that to be on the safe side.)
Differential Revision: https://phabricator.services.mozilla.com/D48791
--HG--
extra : moz-landing-system : lando
In 817406-4.html, `<body style="direction: rtl;">` needs to propagate up
to `<html>`, so we should compare its result to 817406-1-ref.html.
Differential Revision: https://phabricator.services.mozilla.com/D45482
--HG--
extra : moz-landing-system : lando
Most of these tests have been disabled for a long time; they run well
in the current test environment.
Differential Revision: https://phabricator.services.mozilla.com/D47616
--HG--
extra : moz-landing-system : lando
multicol-span-all-margin-bottom-001.xht and multicol-span-none-001.xht
have been patched upstream. They should pass after we import from wpt.
DONTBUILD because this is a comment-only change.
Differential Revision: https://phabricator.services.mozilla.com/D47340
--HG--
extra : moz-landing-system : lando