Commit Graph

15107 Commits

Author SHA1 Message Date
Noemi Erli
a46c530056 Backed out changeset 8837411e5cce (bug 1862241) for causing failures in test_transitions_per_property.html CLOSED TREE 2023-11-06 20:45:52 +02:00
Cathie Chen
dcc3f1176e Bug 1862241 - make the content-visibility animation interpolating, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D192592
2023-11-06 15:44:29 +00:00
Emilio Cobos Álvarez
9a23481b1c Bug 1861726 - Make StyleImage::GetResolution account for CSS zoom. r=layout-reviewers,jfkthame
This fixes rendering of background-image when CSS zoom is in effect.

Note that we want to scale the resolution by the _inverse_ of the
zoom, since having a higher image resolution means that the CSS
size gets shrunk and viceversa.

Differential Revision: https://phabricator.services.mozilla.com/D192130
2023-11-06 10:24:53 +00:00
Jonathan Kew
61646a7103 Bug 1854857 - Don't apply the use_document_fonts=0 setting to chrome contexts; it is intended to affect content only. r=firefox-style-system-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D192817
2023-11-06 10:07:50 +00:00
Jonathan Kew
dbca20aed9 Bug 1860338 - Don't clamp to appUnit range during viewport-unit calculations. r=firefox-style-system-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D192791
2023-11-04 20:28:05 +00:00
Jonathan Kew
092e43b900 Bug 1860205 - Swap Up/Down rounding strategy when negating a Round calc node. r=firefox-style-system-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D192742
2023-11-03 22:29:06 +00:00
Jonathan Kew
a4e52e2419 Bug 1859048 - Fix incorrect CSS rounding behavior when value is an exact multiple of step. r=firefox-style-system-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D192723
2023-11-03 22:00:00 +00:00
David Shin
77c37e8065 Bug 1833679 - DevTools warnings infrastructure. r=nchevobbe,emilio
Differential Revision: https://phabricator.services.mozilla.com/D191333
2023-11-02 15:29:12 +00:00
Emilio Cobos Álvarez
83e7ff6f92 Bug 1850974 - Make :is(:host) work. r=zrhoffman
This should work per spec, see
https://github.com/w3c/csswg-drafts/issues/9509.

Tweak a bit the selector flags set up so that checking for :host
selectors during CascadeData rebuilds is cheap.

Differential Revision: https://phabricator.services.mozilla.com/D191570
2023-11-01 19:20:28 +00:00
Emilio Cobos Álvarez
77a79110dc Bug 1861726 - Remove unused StyleImage::GetIntrinsicSize. r=boris
It doesn't account for various subtleties like aspect ratios etc, so
let's remove it.

Depends on D192131

Differential Revision: https://phabricator.services.mozilla.com/D192132
2023-11-01 17:17:13 +00:00
Emilio Cobos Álvarez
e3d3714eba Bug 1861726 - Expose some CSS zoom boilerplate to C++. r=boris
Not making use of Zoom() / Unzoom() on this patch, but will need it, so
doesn't hurt...

Differential Revision: https://phabricator.services.mozilla.com/D192131
2023-11-01 17:17:12 +00:00
Norisz Fay
458130d63a Backed out changeset 09a6e2a57a02 (bug 1847503) for causing canvas failures on canvas-display-p3-drawImage.https.html 2023-11-01 17:58:20 +02:00
Emilio Cobos Álvarez
c25b3b246f Bug 1862061 - Remove -moz-font-smoothing-background-color. r=gfx-reviewers,desktop-theme-reviewers,devtools-reviewers,dao,gw
See comments in the bug for reasoning. macOS hasn't used subpixel AA for
quite a while.

Emulating this macOS AA on vibrant backgrounds was the only point of
this feature.

This allows to simplify the WebRender code quite a bit, too.

Differential Revision: https://phabricator.services.mozilla.com/D192311
2023-11-01 09:14:29 +00:00
Emilio Cobos Álvarez
40c5cc4d11 Bug 1861954 - Remove vibrancy on the osx sidebar. r=desktop-theme-reviewers,dao
This accidentally broke in 119 and nobody noticed on the whole nightly +
beta cycle (other than due to bug 1861669).

Given sidebars are not super-commonly used these days, this makes the
code a bit less fragile, and it still looks pretty good IMO. Also, since
we want to get rid of <xul:tree>s, this is one less thing to worry
about.

Depends on D192102

Differential Revision: https://phabricator.services.mozilla.com/D192103
2023-11-01 09:05:51 +00:00
Tiaan Louw
1568f5568f Bug 1847503 - Map colors into gamut limits before rendering. r=layout-reviewers,emilio
When colors are converted to sRGB to render onto the display, make sure
that they are within sRGB gamut limits.

Gamut mapping is implemented according to:
https://drafts.csswg.org/css-color-4/#gamut-mapping

The color-mix-non-srgb-001 test is checking the expected result in
sRGB, which happens to be out of gamut limits, but because the test
is for color-mix and not gamut mapping, I changed the expected
results to the color space of the mix.

The svg reftest now has an increased fuzzy to allow for the final colors
to be gamut mapped. Gamut mapping is dependent of available hardware, so
we can't pin down exact colors for the result.

Differential Revision: https://phabricator.services.mozilla.com/D191083
2023-11-01 08:28:33 +00:00
Narcis Beleuzu
21af958c87 Backed out changeset e5e1bc9736a5 (bug 1847503) for reftest failures on anim-css-floodcolor-overflow-1-from-by.svg . CLOSED TREE 2023-11-01 03:22:46 +02:00
Tiaan Louw
ef59084b47 Bug 1847503 - Map colors into gamut limits before rendering. r=layout-reviewers,emilio
When colors are converted to sRGB to render onto the display, make sure
that they are within sRGB gamut limits.

Gamut mapping is implemented according to:
https://drafts.csswg.org/css-color-4/#gamut-mapping

The color-mix-non-srgb-001 test is checking the expected result in
sRGB, which happens to be out of gamut limits, but because the test
is for color-mix and not gamut mapping, I changed the expected
results to the color space of the mix.

The svg reftest now has an increased fuzzy to allow for the final colors
to be gamut mapped. Gamut mapping is dependent of available hardware, so
we can't pin down exact colors for the result.

Differential Revision: https://phabricator.services.mozilla.com/D191083
2023-11-01 00:06:11 +00:00
Emilio Cobos Álvarez
5e6062194f Bug 1861671 - Remove some dead macOS menu drawing code. r=mac-reviewers,bradwerth
Some of it was already dead like the arrow-button-{up,down} stuff.

Depends on D192082

Differential Revision: https://phabricator.services.mozilla.com/D192083
2023-10-31 18:57:12 +00:00
Natalia Csoregi
30852b16d5 Backed out changeset 3727941ffb94 (bug 1861958) for causing bustage on layout.css.container-queries.enabled. CLOSED TREE 2023-10-31 00:46:21 +02:00
Gregory Pappas
c89d952c0b Bug 1861958 - Remove layout.css.container-queries.enabled pref r=emilio,devtools-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D192207
2023-10-30 22:10:52 +00:00
Emilio Cobos Álvarez
2efe17814f Bug 1860666 - Add pref-gated ::slider-* pseudo-elements, and some tests. r=layout-reviewers,jfkthame
We fail some because we right now we have a track pseudo for meter/progress.

I plan to fix this, but a lot of these frame classes are basically copy-pasta,
so I wanted to get rid of them first.

Differential Revision: https://phabricator.services.mozilla.com/D192097
2023-10-30 15:15:24 +00:00
Emilio Cobos Álvarez
1b7dd6eac0 Bug 1861917 - Remove assert that doesn't hold in some animation callers on detached elements.
MANUAL PUSH: Trivial fix CLOSED TREE
2023-10-30 15:39:16 +01:00
David Shin
82b8c1dc6a Bug 1860373: Don't collapse invalidations from selectors shared by nesting. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D192085
2023-10-30 14:19:09 +00:00
Emilio Cobos Álvarez
9682848076 Bug 1861917 - Avoid passing originating_element_style around unnecessarily. r=Oriol
Differential Revision: https://phabricator.services.mozilla.com/D192219
2023-10-30 13:40:26 +00:00
Jonathan Kew
ca59022ed7 Bug 1861718 - Guard against returning NaN for font-size-adjust: from-font with (near-)zero font size. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D192202
2023-10-30 12:37:06 +00:00
Emilio Cobos Álvarez
a1827d62f9 Bug 1860666 - Use an ascii-case-insensitive PHF map for always-enabled pseudo-elements. r=boris
Depends on D192095

Differential Revision: https://phabricator.services.mozilla.com/D192096
2023-10-29 22:10:57 +00:00
Emilio Cobos Álvarez
6d18495bfe Bug 1860666 - Remove webkit range pseudo-element aliases. r=jfkthame,layout-reviewers
We tried and had to turn it off after one day.

Depends on D192094

Differential Revision: https://phabricator.services.mozilla.com/D192095
2023-10-29 22:10:56 +00:00
Tiaan Louw
1b8d896689 Bug 1861739 - Add getter for the color interpolation method of a gradient r=layout-reviewers,emilio
Add a simple getter for the color interpolation method with is stored on
each of the structs in the union. This just makes it easier to get.

Differential Revision: https://phabricator.services.mozilla.com/D192105
2023-10-28 06:59:41 +00:00
David Shin
14e7574746 Bug 1861704: Fix :has() side-effect causing DOM mutations. r=emilio,layout-reviewers
Previously, if an element was blocking a :has next-sibling match gets deleted,
even if the sibling next to the deleted element would now match, we'd discard
that possibility.

Differential Revision: https://phabricator.services.mozilla.com/D192089
2023-10-27 18:44:15 +00:00
Natalia Csoregi
245fbaa7e8 Backed out changeset 3b13b5585380 (bug 1850974) for causing multiple failures e.g. parser crashes. CLOSED TREE 2023-10-27 19:19:11 +03:00
Emilio Cobos Álvarez
f4542a93c1 Bug 1850974 - Make :is(:host) work. r=zrhoffman
This should work per spec, see
https://github.com/w3c/csswg-drafts/issues/9509.

Tweak a bit the selector flags set up so that checking for :host
selectors during CascadeData rebuilds is cheap.

Differential Revision: https://phabricator.services.mozilla.com/D191570
2023-10-27 14:29:38 +00:00
Tiaan Louw
eae164606d Bug 1860513 - Clamp alpha NAN values to 0.0. r=emilio,layout-reviewers
Depends on: D191626

Differential Revision: https://phabricator.services.mozilla.com/D191629
2023-10-27 09:37:11 +00:00
Cathie Chen
ef95647a77 Bug 1836525 - [Content-visibility] Make content-visibility animatable, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D190694
2023-10-27 00:43:25 +00:00
Tiaan Louw
3dac59b313 Bug 1860507 - Make hue component missing for small chroma values r=emilio,layout-reviewers
Update conversion functions to follow the spec here:

https://drafts.csswg.org/css-color-4/#lab-to-lch
https://drafts.csswg.org/css-color-4/#lch-to-lab

Depends on: D191610

Differential Revision: https://phabricator.services.mozilla.com/D191626
2023-10-26 08:31:49 +00:00
Tiaan Louw
b42e98e731 Bug 1823356 - Carry forward analogous missing components when interpolating colors. r=emilio
Missing components were carried forward incorrecly, but now follows the
spec here:

https://drafts.csswg.org/css-color-4/#interpolation-missing

The color flags not correspond with an 0-based array better and matches
new component accessors.

Differential Revision: https://phabricator.services.mozilla.com/D191610
2023-10-25 15:38:20 +00:00
Noemi Erli
298dcb22d6 Backed out 2 changesets (bug 1734538, bug 1633289) for causing local storage related failures
Backed out changeset 3281f4f797df (bug 1633289)
Backed out changeset 09f03bb807c7 (bug 1734538)
2023-10-25 16:26:47 +03:00
Valentin Gosu
93084864ec Bug 1633289 - Upgrade rust-url to 2.4.1 r=necko-reviewers,webdriver-reviewers,glandium,places-reviewers,jesup,whimboo,lina,supply-chain-reviewers
- ran `cargo vet`
- ran `cargo vet prune`
- updated rust-url to 2.4.1
- ran `./mach vendor rust`

Differential Revision: https://phabricator.services.mozilla.com/D186796
2023-10-25 12:21:58 +00:00
David Shin
bbff1a3b96 Bug 1853258: Part 3 - Optimize invalidating relative selectors on DOM mutation. r=emilio
There are cases where we can run a selector match to realize that some DOM mutations
will not make a difference in the relative selector match state, which avoids
O(n^2) behaviour under some circumstances.

Differential Revision: https://phabricator.services.mozilla.com/D191307
2023-10-24 15:11:54 +00:00
David Shin
0e5202e0b3 Bug 1853258: Part 2 - Provide which DOM mutation is happening for relative selector invalidation. r=emilio
Required for upcoming optimization.
Also use the added information to move invalidation acceptance logic.

Differential Revision: https://phabricator.services.mozilla.com/D191306
2023-10-24 15:11:53 +00:00
David Shin
4058466192 Bug 1853258: Part 1 - Refactor where additional relative selector invalidations are added. r=emilio,layout-reviewers
This is slightly more efficient as invalidations are added after duplicates have been removed.
We will be running some matching that we definitely do not want to run on duplicates.

Differential Revision: https://phabricator.services.mozilla.com/D191305
2023-10-24 15:11:52 +00:00
Zach Hoffman
57690ebf56 Bug 1857674 - Reuse more fields from the computed context r=emilio
UnparsedValue:substitute_variables now gets the writing mode and quirks
mode from the computed context, rather than as arguments.

Custom properties still need to be passed in, because
AnimationValue::from_declaration optionally includes extra custom
properties when calling UnparsedValue:substitute_variables.

Depends on D191615

Differential Revision: https://phabricator.services.mozilla.com/D191616
2023-10-23 17:07:47 +00:00
Zach Hoffman
32d6979b28 Bug 1857674 - Reuse is_root_element from style builder r=emilio
Depends on D191161

Differential Revision: https://phabricator.services.mozilla.com/D191615
2023-10-23 17:07:47 +00:00
Zach Hoffman
c93e4c276e Bug 1857674 - Reuse inherited custom properties from style builder r=emilio
Depends on D191160

Differential Revision: https://phabricator.services.mozilla.com/D191161
2023-10-23 17:07:46 +00:00
Zach Hoffman
e8fb520240 Bug 1857674 - Reuse computed context when computing registered custom properties r=emilio
This should cause no change in behavior, but only because because
Cascade::apply_prioritary_properties is not yet called after font-*
declarations have been processed and before registered custom properties
are computed (see bug 1856522).

Depends on D191614

Differential Revision: https://phabricator.services.mozilla.com/D191160
2023-10-23 17:07:46 +00:00
Zach Hoffman
899d1d6b39 Bug 1857674 - Pass computed context to substitute_block r=firefox-style-system-reviewers,emilio
This is necessary in order to compute registered custom properties from
substitute_block.

Depends on D191159

Differential Revision: https://phabricator.services.mozilla.com/D191614
2023-10-23 17:07:45 +00:00
Zach Hoffman
dce0a4106d Bug 1857674 - Add computed context to custom properties context r=emilio
Now that the custom properties context includes the computed context,
some other fields have been made redundant and can be removed (see
D191161).

Depends on D191613

Differential Revision: https://phabricator.services.mozilla.com/D191159
2023-10-23 17:07:45 +00:00
Zach Hoffman
dafe900559 Bug 1857674 - Add computed context to custom properties builder r=firefox-style-system-reviewers,emilio
The stylist is kept in order to avoid needing to unwrap it each time a
stylist is used.

Because a computed context is always required to make a custom
properties builder, cascade_custom_properties_with_context is renamed to
cascade_custom_properties (and the previous cascade_custom_properties,
which did not require a computed context, is removed).

Differential Revision: https://phabricator.services.mozilla.com/D191613
2023-10-23 17:07:44 +00:00
Jonathan Kew
71e6f71f87 Bug 784648 - Implement the 'hanging' and 'each-line' options for CSS text-indent. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191522
2023-10-23 15:12:23 +00:00
David Shin
506ec0c2a0 Bug 1860136: Fix up check for subject/non-subject match in relative selector invalidation. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191486
2023-10-23 13:06:14 +00:00
Gregory Pappas
0063b91cd3 Bug 1851090 - Remove layout.css.bucket-attribute-names.enabled pref r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D191571
2023-10-23 12:23:26 +00:00