15969 Commits

Author SHA1 Message Date
Nico Burns
a29a8d9a78 Bug 1953984 - Use url context data when parsing PaintWorklet args (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241562
2025-03-15 10:50:44 +00:00
Nico Burns
0a4cd80de5 Bug 1953984 - Add Transform::to_transform_3d_matrix_f64 helper method (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241561
2025-03-15 10:50:44 +00:00
Nico Burns
19d388b287 Bug 1953984 - Unify custom property access between servo and gecko (r=emilio)
Both engines now use a getter method.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241560
2025-03-15 10:50:43 +00:00
Nico Burns
4097c779c6 Bug 1953984 - Fix typo in Servo filter effects enum (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241559
2025-03-15 10:50:43 +00:00
Nico Burns
21245341b4 Bug 1953984 - Mark custom properties as non-animatable in Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241558
2025-03-15 10:50:42 +00:00
Nico Burns
f546327422 Bug 1953984 - Only collect view transition rules in Gecko (r=emilio)
Servo does not yet support view transitions

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241557
2025-03-15 10:50:42 +00:00
Nico Burns
078baeab65 Bug 1953984 - Update Servo animation cascading logic (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241556
2025-03-15 10:50:41 +00:00
Nico Burns
2ab1b36998 Bug 1953984 - Enable parsing of ::slotted() for Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241555
2025-03-15 10:50:41 +00:00
Nico Burns
b4dba44538 Bug 1953984 - Add -moz-meter pseudos to Servo selector parser (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241554
2025-03-15 10:50:40 +00:00
Nico Burns
1f9c704001 Bug 1953984 - Remove Servo preference gate for will-change (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241553
2025-03-15 10:50:40 +00:00
Nico Burns
6472f3e7fb Bug 1953984 - Make import gecko-only (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241552
2025-03-15 10:50:39 +00:00
Nico Burns
9e05704838 Bug 1953984 - Use correct Map type in Collector::custom_state_map (r=emilio)
These two types happen to be identical in Gecko, but using the wrong type here
breaks Servo.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241551
2025-03-15 10:50:39 +00:00
Nico Burns
7f497a6f14 Bug 1953984 - Allow servo to access generated macros (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241550
2025-03-15 10:50:38 +00:00
Nico Burns
5a986e6f94 Bug 1953984 - Add missing import (r=emilio)
The Servo version of this import was entirely missing.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241549
2025-03-15 10:50:38 +00:00
Nico Burns
e99dcc5e9f Bug 1953984 - Fix encoding_support module (r=emilio)
This entire module is servo-only code. This patch fixes the build by
passing the correct number of arguments to a function.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241548
2025-03-15 10:50:37 +00:00
Nico Burns
9c99aa9be3 Bug 1953984 - Rename servo_atoms crate to stylo_atoms (r=emilio)
This crate only exist downstream but is referenced in upstream code.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241547
2025-03-15 10:50:37 +00:00
Nico Burns
3731f31428 Bug 1953984 - Replace layout.legacy_layout with layout.unimplemented (r=emilio)
legacy_layout has been removed from Servo.

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D241546
2025-03-15 10:50:36 +00:00
Nico Burns
431fbd1bca Bug 1953074 Upgrade style crate to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240977
2025-03-15 09:26:58 +00:00
Nico Burns
e554ca2f0b Bug 1953074 Upgrade style_traits crate to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240976
2025-03-15 09:26:57 +00:00
Nico Burns
0a01922c87 Bug 1953074 Upgrade style_derive crate to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240975
2025-03-15 09:26:57 +00:00
Alexandru Marc
c9c8c944b9 Backed out changeset 26b1240bfca3 (bug 1901037) for causing multiple rendering related wpt failures 2025-03-15 01:33:00 +02:00
Luke Warlow
268b0361ba Bug 1901037: Implement ::details-content pseudo element r=emilio,devtools-reviewers,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D241100
2025-03-14 21:58:28 +00:00
Oriol Brufau
ca15b79449 Bug 1953582 - Fix wrong indentation from bug 1952776. r=emilio DONTBUILD
Some indentation was messed up while importing changes from Servo in
 - https://phabricator.services.mozilla.com/D240806
 - https://phabricator.services.mozilla.com/D240813

Differential Revision: https://phabricator.services.mozilla.com/D241278
2025-03-12 19:14:45 +00:00
Emilio Cobos Álvarez
1eb3c5cd06 Bug 1953539 - Allow UA widget nodes to be pseudo-elements. r=firefox-style-system-reviewers,zrhoffman
No behavior change right now, but this will unblock D241100.

Differential Revision: https://phabricator.services.mozilla.com/D241106
2025-03-12 16:25:15 +00:00
Nicolas Chevobbe
80af76ba24 Bug 1950551 - [devtools] Fix source_location of CssRule::NestedDeclarations. r=emilio,supply-chain-reviewers.
Nested declarations were getting the location of their parent rule, which would
cause issue in the DevTools Inspector (e.g. for InspectorUtils.getRelativeRuleLine).
We now track the first declaration of the nested declaration to set it as the location
of the rule.

This required some changes in upstream cssparser that are vendored in this patch:
- 5e477ab819
- 958a3f098a

Differential Revision: https://phabricator.services.mozilla.com/D238911
2025-03-12 05:58:39 +00:00
Emilio Cobos Álvarez
c80a08863f Bug 1952516 - Minor clean-ups on top. r=dshin
Now that we don't need to look at the registration for substitution we
can simplify the code a little bit.

Differential Revision: https://phabricator.services.mozilla.com/D240732
2025-03-11 19:50:04 +00:00
Emilio Cobos Álvarez
72109cd930 Bug 1952516 - Don't validate variable fallback type. r=dshin
See https://github.com/w3c/css-houdini-drafts/pull/1139 and linked CSSWG
issue. Anders will update the tests before landing.

Differential Revision: https://phabricator.services.mozilla.com/D240731
2025-03-11 19:50:04 +00:00
Emilio Cobos Álvarez
3d18eec248 Bug 1952776: Fix build.
MANUAL PUSH: Bustage fix CLOSED TREE
2025-03-11 14:36:44 +02:00
Nico Burns
a4368ce21b Bug 1952776: Servo: Enable min-/max-/fit-content/stretch; disable fit-content() (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240813
2025-03-11 11:52:27 +00:00
Nico Burns
66bcf9f483 Bug 1952776: Upstream malloc_size_of impl tweaks for Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240812
2025-03-11 11:52:27 +00:00
Nico Burns
c8b3282fd3 Bug 1952776: Enable overflow:clip for Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240811
2025-03-11 11:52:27 +00:00
Nico Burns
eaa5aa78ff Bug 1952776: Upstream missing servo-specific ListStyleType re-export (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240810
2025-03-11 11:52:26 +00:00
Nico Burns
bd03ae74c4 Bug 1952776: Add is_auto and is_definitely_zero helper methods to GenericMargin (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240809
2025-03-11 11:52:26 +00:00
Nico Burns
beb2071ca5 Bug 1952776: Add is_auto helper method to GenericInset (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240808
2025-03-11 11:52:25 +00:00
Nico Burns
fcd54b1c29 Bug 1952776: Enable MozCenterOrInherit for Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240807
2025-03-11 11:52:25 +00:00
Nico Burns
76ed9b840b Bug 1952776: impl SubAssign for CSSPixelLength (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240806
2025-03-11 11:52:25 +00:00
Nico Burns
a9ef3a1d7a Bug 1952776: Derive Hash for FontStretch (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240805
2025-03-11 11:52:24 +00:00
Nico Burns
93d70cc49a Bug 1952776: Reduce scope of context variable (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240804
2025-03-11 11:52:24 +00:00
Nico Burns
8a5cd55092 Bug 1952776: Use reference in resolve_color function (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240803
2025-03-11 11:52:23 +00:00
Nico Burns
faced539b5 Bug 1952776: Enable more CSS properties for Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240802
2025-03-11 11:52:23 +00:00
Nico Burns
d044cbab35 Bug 1952776: Upstream minor style_traits changes from Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240801
2025-03-11 11:52:22 +00:00
Nico Burns
c6e4cf16ee Bug 1952776: Servo-specific Iterator impl for Effective sources which no longer exists downstream (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240800
2025-03-11 11:52:22 +00:00
Nico Burns
72a9baa02e Bug 1952776: Deduplicate PrefersColorScheme enum between Gecko and Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240799
2025-03-11 11:52:22 +00:00
Nico Burns
a51f3d8919 Bug 1952776: Upstream Stylo config changes from Servo (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D240798
2025-03-11 11:52:21 +00:00
Emilio Cobos Álvarez
275d13704e Bug 1952075 - Clean up a bit the selector matching code. r=dshin
I think treating featureless as "no next candidate found" makes a lot
more sense (even though in practice it should be the same, since we
currently only have elements with child / descendant combinators).

This also cleans up a bit more the code, and stops earlier for pseudos,
part, and slotted, which similarly can't find an ancestor once past the
original one we return.

Differential Revision: https://phabricator.services.mozilla.com/D240490
2025-03-10 14:36:50 +00:00
Emilio Cobos Álvarez
5566566dce Bug 1952328 - Simplify native link color set-up. r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D240726
2025-03-07 20:35:49 +00:00
David Shin
e28efec5ed Bug 1951780: Allow parsing anchor-size function in math function in margin properties. r=firefox-style-system-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D240381
2025-03-06 14:09:59 +00:00
Boris Chiou
584caf8dca Bug 1950719 - Update the rest of view transition pseudo-element styles. r=view-transitions-reviewers,emilio
Update the styles for writing-mode, direction, text-orientation,
mix-blend-mode, backdrop-filter, and color-scheme.

Also, update the test, pseudo-get-computed-style.html, because it
doesn't really match the spec. For example, we update the pseudo-element
styles after we invoke the update callback, so the computed values of
these pseudo elements should be the default values inside the update callback.

Now the behavior of Gecko is the same as that of WebKit.

Differential Revision: https://phabricator.services.mozilla.com/D240406
2025-03-06 03:26:55 +00:00
Emilio Cobos Álvarez
f1828f2971 Bug 1941651 - Relax a bit the requirements of animation-only traversals. r=dshin
The whole animation-only traversal thing is quite messy, but it can
generally no longer assert that it only deals with already-styled
subtrees, since we want to make display animatable.

Make it more in line with the regular traversal, in order not to leave
the tree in an inconsistent state (an element with display != none that
has unstyled children), which the frame constructor complains about
(rightfully so).

Differential Revision: https://phabricator.services.mozilla.com/D240307
2025-03-04 15:17:51 +00:00
movabs
e07ce71166 Bug 1941949 - Expand the list of background-*/border-* properties that disable native styling of form controls. r=emilio
Certain (background-*/border-*) related properties were not triggering
the behavior that disables native styling for buttons.
Updated the `border_background_properties` function to include
all properties in the `border` and `background` shorthands.

Differential Revision: https://phabricator.services.mozilla.com/D235326
2025-03-01 20:52:51 +00:00