Supplanted by Bug 1876962 making `:has` a revalidation selector.
Remaining reference was added during Bug 1869771, is still handled
by the revalidation logic (`has-style-sharing-007.html` stil passes).
Differential Revision: https://phabricator.services.mozilla.com/D212725
Before this change, `@page {}` was parsed as though the rule had a single
selector with an empty atom as the name. We would generally accept things like
`@page a, {}` to include an empty selector too, since no matching tokens ended
up representing an empty page-name (as is the case with just pseudo-classes
and no page-name), and an empty pseudo-class list (as is the case with just a
page-name and no pseudo-classes).
We shouldn't be accepting both of those at the same time.
This also fixes serialization of empty page-rule selector list.
It seems there are no WPT that check how page-rules are specifically
serialized. This adds a few basic ones to catch at least this issue.
Differential Revision: https://phabricator.services.mozilla.com/D216068
Unused for now, but pretty straight-forward.
Bug 1905257 has some code that actually uses it. This allows the
front-end folks to experiment with this effect for the sidebar.
Differential Revision: https://phabricator.services.mozilla.com/D216325
Most styles that specify transitions don't actually have a transition
running at the very same time, and we can check for that in the cache
already.
We need to avoid reusing-by-rule-node for @starting-style rules, but
that's fine because that's effectively what already happened before this
change, due to the check we're removing (we only resolve @starting-style
when we're about to maybe-start a transition).
Differential Revision: https://phabricator.services.mozilla.com/D216286
The issue is that we track the 1em as a custom reference and thus fail
to compute the color. But in this case 1em is not a valid value and we
should fall back to the initial value.
Differential Revision: https://phabricator.services.mozilla.com/D216030
Before this change, `@page {}` was parsed as though the rule had a single
selector with an empty atom as the name. We would generally accept things like
`@page a, {}` to include an empty selector too, since no matching tokens ended
up representing an empty page-name (as is the case with just pseudo-classes
and no page-name), and an empty pseudo-class list (as is the case with just a
page-name and no pseudo-classes).
We shouldn't be accepting both of those at the same time.
This also fixes serialization of empty page-rule selector list.
It seems there are no WPT that check how page-rules are specifically
serialized. This adds a few basic ones to catch at least this issue.
Differential Revision: https://phabricator.services.mozilla.com/D216068
We rely on the current value to check if we have to create a transition
to replace the running one, and if the running transition is on the
compositor, we don't have the up-do-date transition rule on the main
thread, so we have to compute it when trying to create a new transition.
Differential Revision: https://phabricator.services.mozilla.com/D213687
After bug 1867854, dialog windows on macOS no longer show desktop tinting on the window background. Since this requires a transparent Gecko background, the `-moz-mac-unified-toolbar-window` appearance added in bug 1870481 should be applied to every window. It has been renamed to reflect this.
Differential Revision: https://phabricator.services.mozilla.com/D215596
Refactor GenerateCSS2PropertiesWebIDL.py to generate both CSS2Properties and
also CSSPageDescriptors.
I had to adjust the margin property in Servo to ensure
`margin_{inline,block}_{start,end}` did not end up in CSSPageDescriptors.
I also removed the main function from the script since the arguments are
already inaccurately named as leftovers from its previous usage, and this
script is only invoked by function name by the build anyway.
Differential Revision: https://phabricator.services.mozilla.com/D209061
In some cases, DevTools might want to get the property definition of a given registered property,
so we're adding a new InspectorUtils method for this.
It returns null when there is no registered property matching the passed name.
A test is added to ensure this behaves as expected.
Differential Revision: https://phabricator.services.mozilla.com/D215317
`malloc_size_of` no longer needs to have support for hyper and
hyper_serde and it adds derives for `http` and `indexmap`. Derives are
added for a couple standard library types and finally Gecko-only data
types are guarded by a new `gecko` feature.
Differential Revision: https://phabricator.services.mozilla.com/D214840