Commit Graph

405 Commits

Author SHA1 Message Date
Emily McDonough
763caf2f4b Bug 1787947 - pref on CSS named pages in Nightly r=dholbert
Also standardize having named pages enabled for css-page WPT

Differential Revision: https://phabricator.services.mozilla.com/D163638
2022-12-12 21:11:36 +00:00
Jonathan Kew
1332dcab60 Bug 1804492 - Remove 'font-palette' from the 'font' shorthand. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D164128
2022-12-08 10:16:34 +00:00
Cosmin Sabou
0301229a33 Backed out changeset b276c24696ee (bug 1787947) for causing crashes @nsCSSFrameConstructor. 2022-12-08 02:24:48 +02:00
Emily McDonough
949d9a3602 Bug 1787947 - pref on CSS named pages in Nightly r=dholbert
Also standardize having named pages enabled for css-page WPT

Differential Revision: https://phabricator.services.mozilla.com/D163638
2022-12-07 23:20:35 +00:00
Sandor Molnar
bd36ecc5f8 Backed out changeset 6fb5de003d4a (bug 1787947) for breaking test. CLOSED TREE 2022-12-07 23:59:19 +02:00
Emily McDonough
955e3d440e Bug 1787947 - pref on CSS named pages in Nightly r=dholbert
Also standardize having named pages enabled for css-page WPT

Differential Revision: https://phabricator.services.mozilla.com/D163638
2022-12-07 21:14:52 +00:00
Emilio Cobos Álvarez
d1cbf0a1fa Bug 1802957 - Remove non-standard and unused system font values. r=jfkthame
And hide internal but used values. System fonts are not exposed in the
computed style so this should be fine.

If we need the old values for some obscure reason, it's trivial to alias
them to e.g., menu or so.

Differential Revision: https://phabricator.services.mozilla.com/D163269
2022-12-01 09:23:19 +00:00
Marian-Vasile Laza
3c601ebb5b Backed out 3 changesets (bug 1802957) for causing mochitest failures on test_unstyled_control_height.html. CLOSED TREE
Backed out changeset 649c190f6c29 (bug 1802957)
Backed out changeset 60822417a838 (bug 1802957)
Backed out changeset ffe8d999e454 (bug 1802957)
2022-12-01 01:23:08 +02:00
Emilio Cobos Álvarez
9dce1ba857 Bug 1802957 - Remove non-standard and unused system font values. r=jfkthame
And hide internal but used values. System fonts are not exposed in the
computed style so this should be fine.

If we need the old values for some obscure reason, it's trivial to alias
them to e.g., menu or so.

Differential Revision: https://phabricator.services.mozilla.com/D163269
2022-11-30 16:14:26 +00:00
Thomas Wisniewski
14cdfa9948 Bug 1800969 - Alias -webkit-clip-path to clip-path for webcompat; r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D162674
2022-11-23 20:26:14 +00:00
Emilio Cobos Álvarez
9c09a01fde Bug 1802169 - Remove unused -moz-window-frame appearance constants. r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D162864
2022-11-23 16:20:02 +00:00
Emilio Cobos Álvarez
c3e948bda6 Bug 1800950 - Update property database.
MANUAL PUSH: Trivial orange fix CLOSED TREE
2022-11-22 20:00:08 +01:00
Emilio Cobos Álvarez
9b627875e9 Bug 1798396 - Update property database to account for previous change.
MANUAL PUSH: Trivial orange fix CLOSED TREE
2022-11-22 15:57:29 +01:00
Emilio Cobos Álvarez
dfd42e999b Bug 1801123 - Enable container queries on nightly. r=dshin
There's only one worrying timeout
(css/css-contain/container-queries/inline-size-bfc-floats.html), but it
isn't a "hard" hang, but an invalidation loop.

Let's enable this by default on nightly to get some feedback while we
work on it and the remaining issues that block enabling them by default.

Differential Revision: https://phabricator.services.mozilla.com/D162292
2022-11-21 10:04:31 +00:00
Jonathan Kew
5c0ba3e4f8 Bug 1461589 - Add support for the CSS font-variant-emoji property to the style system. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D147494
2022-10-22 09:43:48 +00:00
Jonathan Kew
6c8aa5c7ca Bug 1791778 - CSS support for the font-palette property. r=emilio
This is just the CSS parsing, not yet connected to the rendering back-end.

Differential Revision: https://phabricator.services.mozilla.com/D157957
2022-10-07 23:00:44 +00:00
Noemi Erli
5bff78ad47 Backed out 9 changesets (bug 1791778, bug 1791782, bug 1791780, bug 1791777) for causing build bustages in TestCOLRv1.cpp CLOSED TREE
Backed out changeset aeb44b79bf31 (bug 1791782)
Backed out changeset 292fd3a1b6dd (bug 1791782)
Backed out changeset 9947218170d0 (bug 1791780)
Backed out changeset 528b4c022a44 (bug 1791778)
Backed out changeset c734ff661a66 (bug 1791778)
Backed out changeset 6585dd386ee3 (bug 1791777)
Backed out changeset af4243189ef1 (bug 1791777)
Backed out changeset a47ae5f76514 (bug 1791777)
Backed out changeset 24ce615e77fd (bug 1791777)
2022-10-08 00:08:57 +03:00
Jonathan Kew
c4f1dbdd1e Bug 1791778 - CSS support for the font-palette property. r=emilio
This is just the CSS parsing, not yet connected to the rendering back-end.

Differential Revision: https://phabricator.services.mozilla.com/D157957
2022-10-07 18:58:52 +00:00
Cristian Tuns
7e076fb429 Backed out 9 changesets (bug 1791777, bug 1791780, bug 1791778, bug 1791782) for causing build bustages on TestCOLRv1.cpp CLOSED TREE
Backed out changeset f145a34cfbc1 (bug 1791782)
Backed out changeset 2f12216fbeda (bug 1791782)
Backed out changeset 61bd2a4496bf (bug 1791780)
Backed out changeset 4e4eb99a7fd9 (bug 1791778)
Backed out changeset 32d171a28810 (bug 1791778)
Backed out changeset e317795cd27a (bug 1791777)
Backed out changeset 5e32d5a01917 (bug 1791777)
Backed out changeset cf87497dbead (bug 1791777)
Backed out changeset 586c735b005e (bug 1791777)
2022-10-07 13:46:43 -04:00
Jonathan Kew
7e5352013d Bug 1791778 - CSS support for the font-palette property. r=emilio
This is just the CSS parsing, not yet connected to the rendering back-end.

Differential Revision: https://phabricator.services.mozilla.com/D157957
2022-10-07 16:53:34 +00:00
Norisz Fay
c89c407e10 Backed out 9 changesets (bug 1791780, bug 1791782, bug 1791778, bug 1791777) for causing multiple mochitest failures CLOSED TREE
Backed out changeset 6de1ade5a9b6 (bug 1791782)
Backed out changeset ce96452a38a1 (bug 1791782)
Backed out changeset 7cc8e027f5a7 (bug 1791780)
Backed out changeset 8e023280032c (bug 1791778)
Backed out changeset 26d65d76d02a (bug 1791778)
Backed out changeset a98dd552df64 (bug 1791777)
Backed out changeset 766386309ee5 (bug 1791777)
Backed out changeset 7de66a218ba4 (bug 1791777)
Backed out changeset 1d17c257444e (bug 1791777)
2022-10-07 17:36:38 +03:00
Jonathan Kew
4d2afdb7c3 Bug 1791778 - CSS support for the font-palette property. r=emilio
This is just the CSS parsing, not yet connected to the rendering back-end.

Differential Revision: https://phabricator.services.mozilla.com/D157957
2022-10-07 12:16:52 +00:00
Oriol Brufau
eb0f636d38 Bug 1792886 - Enable contain-intrinsic-size by default. r=emilio
Intent to ship: https://groups.google.com/a/mozilla.org/g/dev-platform/c/QtMpDO5ZHk8

Differential Revision: https://phabricator.services.mozilla.com/D158368
2022-10-01 13:46:04 +00:00
criss
8bedc22cb1 Backed out 2 changesets (bug 1667090, bug 1788605) for causing Xpcshell failures on test_css-properties-db.js. CLOSED TREE
Backed out changeset cee98ae67ea4 (bug 1788605)
Backed out changeset 404e0b4bcd0f (bug 1667090)
2022-09-15 12:13:28 +03:00
Frederic Wang
b48c61455f Bug 1667090 - Implement CSS font-size: math and math-depth properties. r=emilio
The font-size math keyword is implemented. It behaves as a font-size: 1em
with the extra fixup due to math-level change (and other legacy MathML
attributes). After that change, the CSS for math-level / font-size: math
is behaving as per the specification, so the math-depth is turned in
nightly.

The adjusting function for font-size: math is modified so that it's
executed only if both font-size: math (otherwise the spec says no scale
should apply) and math-depth (otherwise the scale is 1 and function exists
early anyway) are set on the element. Also checking if the current node
has a scriptsizemultiplier rule applied to use MathML3's scaling is
incorrect. Instead this is changed to check if a non-default
scriptsizemultiplier is set.

Differential Revision: https://phabricator.services.mozilla.com/D91744
2022-09-15 08:14:49 +00:00
Emilio Cobos Álvarez
d9361c3825 Bug 1786147 - Remove layout.css.webkit-line-clamp.enabled, and add a new pref to apply line-clamp to all BFCs. r=dholbert
It's always true, so remove it.

Add another pref to allow -webkit-line-clamp to work on all blocks
rather than just legacy -webkit-boxes, which seems something we should
try to look into, eventually.

Depends on D155181

Differential Revision: https://phabricator.services.mozilla.com/D155182
2022-09-07 23:57:18 +00:00
Boris Chiou
96c4407912 Bug 1785329 - Enable animation-composition on Nightly. r=hiro
It seems that making animation shorthand supports animation-composition may be
very tricky, so it's unlikely to include animation-composition into the
shorthand for now, per spec issue:
https://github.com/w3c/csswg-drafts/issues/6946.

WebKit also supports the longhand only on STP (Safari Technology Preview), so
it should be fine to enable the longhand property only on Firefox Nightly,
for experiemental testing.

Differential Revision: https://phabricator.services.mozilla.com/D154934
2022-08-17 23:39:55 +00:00
Boris Chiou
3032cd0a1d Bug 1746528 - Remove aspect-ratio preference. r=emilio
We shipped this in Firefox 89, one year ago. It should be okay to drop
this preference now.

Differential Revision: https://phabricator.services.mozilla.com/D153680
2022-08-04 17:58:03 +00:00
Boris Chiou
a737fb6158 Bug 1293490 - Part 1: Implement CSS animation-composition longhand in style system. r=emilio
This patch introduces animation-composition longhand but we don't
accept it in @keyframe rule for now. I will support this for @keyframe
in the patch series.

Besides, the shorthand of animation doesn't include animation-composition.
The spec issue is: https://github.com/w3c/csswg-drafts/issues/6946.
We could fix the shorthand once this spec issue gets updated.

Differential Revision: https://phabricator.services.mozilla.com/D150299
2022-07-12 19:02:03 +00:00
Emilio Cobos Álvarez
41415528ae Bug 1778396 - Add color-mix to DevTools autocomplete. r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D151180
2022-07-07 10:29:59 +00:00
Ziran Sun
aba2e26071 Bug 1778062 - Add support for parsing the contain-intrinsic-size property from the CSS-sizing specification. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D151001
2022-07-06 11:47:51 +00:00
Martin Robinson
797bb26bc0 Bug 1463600 - Implement CSS 'contain: style' r=emilio
Add an implementation of CSS `contain: style`. This introduces two new
data structures, the ContainStyleScope and ContainStyleScopeManager.

ContainStyleScope manages one `contain: style` "world" which has its own
counter and quote lists. The contents of these lists depend on their
parent scopes, but are not affected by their children.
ContainStyleScopeManager manages a tree of scopes starting at a root
scope which is outside of any `contain: style` element.

Scopes are stored in a hash table that is keyed off of the nsIContent
which establishes the `contain: style` scope. When modifying quote or
content lists, the ContainStyleScopeManager is responsible for finding
the appropriate `contain: style` scope to modify.

Perhaps the most complex part of this is that counters and quotes have
read access to the state of counters and quotes that are in ancestor
`contain: style` scopes. In the case of counters, USE nodes that are at
the beginning of counter lists might have a counter scope that starts in
an ancestor `contain: style` scope. When nsCounterNode::SetScope() is
called, the code may look upward in the `contain: style` scope tree to
find the start of the counter scope. In the case of quotes, the first
node in the quote list must look for the state of quotes in ancestor
`contain: style` scopes.

Differential Revision: https://phabricator.services.mozilla.com/D149508
2022-06-22 16:16:59 +00:00
Boris Chiou
58820b2c98 Bug 1754897 - Part 3: Support scroll-timeline shorthand in style system. r=emilio
Implement
"scroll-timeline: <'scroll-timeline-axis'> || <'scroll-timeline-name'>".

Differential Revision: https://phabricator.services.mozilla.com/D146020
2022-06-13 20:26:45 +00:00
Boris Chiou
8950553d8b Bug 1754897 - Part 2: Support scroll-timeline-axis longhand in style system. r=emilio
Implement "scroll-timeline-axis: block | inline | vertical | horizontal".

Differential Revision: https://phabricator.services.mozilla.com/D146019
2022-06-13 20:26:45 +00:00
Boris Chiou
56b24a3676 Bug 1754897 - Part 1: Support scroll-timeline-name longhand in style system. r=emilio
Implement "scroll-timeline-name: none | <custom-ident>".

Differential Revision: https://phabricator.services.mozilla.com/D146018
2022-06-13 20:26:44 +00:00
Glenn Watson
052abaae8c Bug 1578503 - Enable backdrop-filter by default r=gfx-reviewers,jrmuizel
There are still a few remaining issues with the updated backdrop
filter implementation, specifically:

- We don't use reflectMode yet for blurs (quality issue in some cases)
- Performance may not be optimal in all use cases

However, we can try enabling by default now and work on these as
follow ups.

Differential Revision: https://phabricator.services.mozilla.com/D148684
2022-06-09 02:58:55 +00:00
Emilio Cobos Álvarez
a8dc2384cb Bug 1771792 - Remove some dead vibrancy code. r=mstange
Drive-by cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D147698
2022-05-31 10:43:29 +00:00
Hiroyuki Ikezoe
5e685d5724 Bug 1312165 - Parse scroll-snap-stop style and propagate it to APZ side. r=emilio,botond
Depends on D146147

Differential Revision: https://phabricator.services.mozilla.com/D145850
2022-05-31 00:45:11 +00:00
Emilio Cobos Álvarez
86c3ed6655 Bug 1769512 - Implement overflow-clip-margin: <length>. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D146432
2022-05-23 07:21:43 +00:00
Boris Chiou
bd42e7a068 Bug 1737918 - Part 1: Add scroll() to animation-timeline for style system. r=emilio
scroll() is defined in the spec proposal, and there is a temporary spec:
https://drafts.csswg.org/scroll-animations-1/rewrite#scroll-notation.

The spec is still under development, so we don't drop the orignal
scroll-timeline at rule. Instead, we add a new scroll() notation to
animation-timeline, and support both syntax for now.

Differential Revision: https://phabricator.services.mozilla.com/D143417
2022-04-21 17:05:17 +00:00
Noemi Erli
7fc820a55c Backed out 4 changesets (bug 1737918) for causing bustages in ScrollTimeline.cpp CLOSED TREE
Backed out changeset cecdd071c1aa (bug 1737918)
Backed out changeset fcc5ecd364e4 (bug 1737918)
Backed out changeset f7bf3143e4a7 (bug 1737918)
Backed out changeset a143d2e54fb9 (bug 1737918)
2022-04-21 01:21:14 +03:00
Boris Chiou
7bde8f7c47 Bug 1737918 - Part 1: Add scroll() to animation-timeline for style system. r=emilio
scroll() is defined in the spec proposal, and there is a temporary spec:
https://drafts.csswg.org/scroll-animations-1/rewrite#scroll-notation.

The spec is still under development, so we don't drop the orignal
scroll-timeline at rule. Instead, we add a new scroll() notation to
animation-timeline, and support both syntax for now.

Differential Revision: https://phabricator.services.mozilla.com/D143417
2022-04-20 20:28:52 +00:00
Emilio Cobos Álvarez
a7977e5e52 Bug 1765550 - Move transitions and animations to nsStyleUIReset. r=dshin
This mostly just moves code around, to minimize potential behavior
changes. There are some cleanups that we should try to do long term
(this "have an array with n different counts" is pretty weird).

But for now this should unblock people.

The destination struct (nsStyleUIReset) was chosen mainly because it's
small and non-inherited, and it doesn't seem like a worse place than
nsStyleDisplay.

Differential Revision: https://phabricator.services.mozilla.com/D144183
2022-04-20 15:13:54 +00:00
David Shin
fa30ed0b4a Bug 1755565 - Implement contain: inline-size. r=emilio,dholbert
Differential Revision: https://phabricator.services.mozilla.com/D143501
2022-04-19 17:44:16 +00:00
David Shin
212d8b9c35 Bug 1759621 - Migrate <th> text-align behaviour from presentation hint to UA CSS. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D142494
2022-04-01 22:57:05 +00:00
Emilio Cobos Álvarez
f1d6e24e61 Bug 1762088 - Implement parsing / serialization for container{,-type,-name} CSS properties. r=firefox-style-system-reviewers,layout-reviewers,boris
Two noteworthy details that may seem random otherwise:

 * Moving values around in nsStyleDisplay is needed so that the struct
   remains under the size limit that we have to avoid jumping allocator
   buckets.

 * All the test expectation churn is because tests depend on
   `container-type: size` parsing to run, and now they run. Tests for
   the relevant bits I implemented are passing, with the only exception
   of some `container-name-computed.html` failures which are
   https://github.com/w3c/csswg-drafts/issues/7181. Safari agrees with
   us there.

Other notes when looking at the spec and seeing how it matches the
implementation:

 * `container` syntax doesn't match spec, but matches tests and sanity:
   https://github.com/w3c/csswg-drafts/issues/7180

 * `container-type` syntax doesn't _quite_ match spec, but matches tests
   and I think it's a spec bug since the definition for the missing
   keyword is gone:
   https://github.com/w3c/csswg-drafts/issues/7179

Differential Revision: https://phabricator.services.mozilla.com/D142419
2022-03-31 22:56:20 +00:00
Emilio Cobos Álvarez
d159e502ee Bug 1760734 - Put overflow: -moz-hidden-unscrollable behind a pref on Nightly. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D141759
2022-03-23 08:41:51 +00:00
Martin Robinson
65bfb5ab36 Bug 1759130 - Add support for parsing the content-visibility property from the CSS Contain specification r=emilio
Add initial parsing support for the CSS `content-visibility` attribute.
Currently these parsed values have no effect.

Differential Revision: https://phabricator.services.mozilla.com/D140834
2022-03-14 12:33:55 +00:00
Emilio Cobos Álvarez
836062858b Bug 1746248 - Style system and plumbing for mix-blend-mode: plus-lighter. r=jrmuizel,layout-reviewers,boris
Differential Revision: https://phabricator.services.mozilla.com/D137951
2022-02-09 03:15:52 +00:00
Emilio Cobos Álvarez
faa98ed83f Bug 1748174 - Remove touch-action pref. r=hiro
It's been enabled by default since ~forever.

Differential Revision: https://phabricator.services.mozilla.com/D134935
2022-01-05 12:28:07 +00:00