Title: [283221] trunk
Revision
283221
Author
[email protected]
Date
2021-09-29 08:40:56 -0700 (Wed, 29 Sep 2021)

Log Message

Font palette names have to start with two hyphens
https://bugs.webkit.org/show_bug.cgi?id=230790
<rdar://problem/83530013>

Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Tests are being upstreamed at https://github.com/web-platform-tests/wpt/pull/30963.

* web-platform-tests/css/css-fonts/font-palette-add-2-expected.html:
* web-platform-tests/css/css-fonts/font-palette-add-2.html:
* web-platform-tests/css/css-fonts/font-palette-add-expected-mismatch.html:
* web-platform-tests/css/css-fonts/font-palette-add.html:
* web-platform-tests/css/css-fonts/font-palette-empty-font-family-expected-mismatch.html:
* web-platform-tests/css/css-fonts/font-palette-empty-font-family.html:
* web-platform-tests/css/css-fonts/font-palette-modify-2-expected.html:
* web-platform-tests/css/css-fonts/font-palette-modify-2.html:
* web-platform-tests/css/css-fonts/font-palette-modify-expected-mismatch.html:
* web-platform-tests/css/css-fonts/font-palette-modify.html:
* web-platform-tests/css/css-fonts/font-palette-remove-2-expected.html:
* web-platform-tests/css/css-fonts/font-palette-remove-2.html:
* web-platform-tests/css/css-fonts/font-palette-remove-expected-mismatch.html:
* web-platform-tests/css/css-fonts/font-palette-remove.html:
* web-platform-tests/css/css-fonts/font-palette.html:
* web-platform-tests/css/css-fonts/palette-values-rule-add-2-expected.html:
* web-platform-tests/css/css-fonts/palette-values-rule-add-2.html:
* web-platform-tests/css/css-fonts/palette-values-rule-add-expected-mismatch.html:
* web-platform-tests/css/css-fonts/palette-values-rule-add.html:
* web-platform-tests/css/css-fonts/palette-values-rule-delete-2-expected.html:
* web-platform-tests/css/css-fonts/palette-values-rule-delete-2.html:
* web-platform-tests/css/css-fonts/palette-values-rule-delete-expected-mismatch.html:
* web-platform-tests/css/css-fonts/palette-values-rule-delete.html:
* web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt:
* web-platform-tests/css/css-fonts/parsing/font-palette-computed.html:
* web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt:
* web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html:
* web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt:
* web-platform-tests/css/css-fonts/parsing/font-palette-valid.html:
* web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html:
* web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html:

Source/WebCore:

The spec changed in
https://github.com/w3c/csswg-drafts/commit/9ddf9388a2fe0ac300c41b7244e10c0a40fe0cae.

Font palettes now have to be named with a <dashed-ident>.

Updated existing tests.

* css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeFontPaletteValuesRule):
* css/parser/CSSPropertyParser.cpp:
(WebCore::consumeFontPalette):
* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeDashedCustomIdent):
* css/parser/CSSPropertyParserHelpers.h:

Modified Paths

Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-09-29 15:40:56 UTC (rev 283221)
@@ -1,5 +1,47 @@
 2021-09-29  Myles C. Maxfield  <[email protected]>
 
+        Font palette names have to start with two hyphens
+        https://bugs.webkit.org/show_bug.cgi?id=230790
+        <rdar://problem/83530013>
+
+        Reviewed by Dean Jackson.
+
+        Tests are being upstreamed at https://github.com/web-platform-tests/wpt/pull/30963.
+
+        * web-platform-tests/css/css-fonts/font-palette-add-2-expected.html:
+        * web-platform-tests/css/css-fonts/font-palette-add-2.html:
+        * web-platform-tests/css/css-fonts/font-palette-add-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/font-palette-add.html:
+        * web-platform-tests/css/css-fonts/font-palette-empty-font-family-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/font-palette-empty-font-family.html:
+        * web-platform-tests/css/css-fonts/font-palette-modify-2-expected.html:
+        * web-platform-tests/css/css-fonts/font-palette-modify-2.html:
+        * web-platform-tests/css/css-fonts/font-palette-modify-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/font-palette-modify.html:
+        * web-platform-tests/css/css-fonts/font-palette-remove-2-expected.html:
+        * web-platform-tests/css/css-fonts/font-palette-remove-2.html:
+        * web-platform-tests/css/css-fonts/font-palette-remove-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/font-palette-remove.html:
+        * web-platform-tests/css/css-fonts/font-palette.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-add-2-expected.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-add-2.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-add-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-add.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-delete-2-expected.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-delete-2.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-delete-expected-mismatch.html:
+        * web-platform-tests/css/css-fonts/palette-values-rule-delete.html:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-computed.html:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-valid.html:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html:
+        * web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html:
+
+2021-09-29  Myles C. Maxfield  <[email protected]>
+
         CSSFontPaletteValuesRule should not be maplike
         https://bugs.webkit.org/show_bug.cgi?id=230793
         <rdar://problem/83530242>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,18 +11,18 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
 #target {
-    font-palette: Palette1;
+    font-palette: --Palette1;
 }
 </style>
 </head>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,12 +12,12 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -24,10 +24,10 @@
 
 @keyframes TheAnimation {
     from {
-        font-palette: Palette0;
+        font-palette: --Palette0;
     }
     to {
-        font-palette: Palette1;
+        font-palette: --Palette1;
     }
 }
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,12 +11,12 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -23,10 +23,10 @@
 
 @keyframes TheAnimation {
     from {
-        font-palette: Palette0;
+        font-palette: --Palette0;
     }
     to {
-        font-palette: Palette1;
+        font-palette: --Palette1;
     }
 }
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-3.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,12 +12,12 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -24,10 +24,10 @@
 
 @keyframes TheAnimation {
     from {
-        font-palette: Palette0;
+        font-palette: --Palette0;
     }
     to {
-        font-palette: Palette1;
+        font-palette: --Palette1;
     }
 }
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,18 +11,18 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
 #target {
-    font-palette: Palette0;
+    font-palette: --Palette0;
 }
 </style>
 </head>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/animations/font-palette-animation.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,12 +12,12 @@
     src: url("../resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette0 {
+@font-palette-values --Palette0 {
     font-family: "Ahem-COLR";
     base-palette: 0;
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -24,10 +24,10 @@
 
 @keyframes TheAnimation {
     from {
-        font-palette: Palette0;
+        font-palette: --Palette0;
     }
     to {
-        font-palette: Palette1;
+        font-palette: --Palette1;
     }
 }
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -18,6 +18,6 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -24,7 +24,7 @@
 let count = 0;
 function tick() {
     if (count > 3) {
-        document.getElementById("target").style.setProperty("font-palette", "MyPalette");
+        document.getElementById("target").style.setProperty("font-palette", "--MyPalette");
         document.documentElement.classList.remove("reftest-wait");
     } else {
         ++count;

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-add.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -24,7 +24,7 @@
 let count = 0;
 function tick() {
     if (count > 3) {
-        document.getElementById("target").style.setProperty("font-palette", "MyPalette");
+        document.getElementById("target").style.setProperty("font-palette", "--MyPalette");
         document.documentElement.classList.remove("reftest-wait");
     } else {
         ++count;

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -18,6 +18,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; color-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; color-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-empty-font-family.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "";
     base-palette: 1;
 }
@@ -19,6 +19,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px ''; color-palette: MyPalette;">A</div>
+<div style="font: 48px ''; color-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,12 +11,12 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
-@font-palette-values MyPalette2 {
+@font-palette-values --MyPalette2 {
     font-family: "Ahem-COLR";
     base-palette: 0;
     override-colors: 1 #00FF00;
@@ -24,6 +24,6 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette2;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette2;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,12 +12,12 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
-@font-palette-values MyPalette2 {
+@font-palette-values --MyPalette2 {
     font-family: "Ahem-COLR";
     base-palette: 0;
     override-colors: 1 #00FF00;
@@ -25,12 +25,12 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {
     if (count > 3) {
-        document.getElementById("target").style.setProperty("font-palette", "MyPalette2");
+        document.getElementById("target").style.setProperty("font-palette", "--MyPalette2");
         document.documentElement.classList.remove("reftest-wait");
     } else {
         ++count;

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,12 +11,12 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
-@font-palette-values MyPalette2 {
+@font-palette-values --MyPalette2 {
     font-family: "Ahem-COLR";
     base-palette: 0;
     override-colors: 1 #00FF00;
@@ -24,6 +24,6 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-modify.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,12 +12,12 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
 
-@font-palette-values MyPalette2 {
+@font-palette-values --MyPalette2 {
     font-family: "Ahem-COLR";
     base-palette: 0;
     override-colors: 1 #00FF00;
@@ -25,12 +25,12 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {
     if (count > 3) {
-        document.getElementById("target").style.setProperty("font-palette", "MyPalette2");
+        document.getElementById("target").style.setProperty("font-palette", "--MyPalette2");
         document.documentElement.classList.remove("reftest-wait");
     } else {
         ++count;

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -19,7 +19,7 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -18,6 +18,6 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette-remove.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -19,7 +19,7 @@
 </style>
 </head>
 <body>
-<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div id="target" style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/font-palette.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -13,29 +13,29 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values Palette1 {
+@font-palette-values --Palette1 {
     font-family: "WebFont";
     base-palette: 0;
 }
 
-@font-palette-values Palette2 {
+@font-palette-values --Palette2 {
     font-family: "WebFont";
     base-palette: 1;
 }
 
-@font-palette-values Palette3 {
+@font-palette-values --Palette3 {
     font-family: "WebFont";
     base-palette: 1;
     override-colors: 1 #FFFF00;
 }
 
-@font-palette-values Palette4 {
+@font-palette-values --Palette4 {
     font-family: "WebFont";
     base-palette: 1;
     override-colors: 0 #00FF00, 1 #000000;
 }
 
-@font-palette-values Palette5 {
+@font-palette-values --Palette5 {
     font-family: "WebFont";
     base-palette: 1;
     override-colors: 1 #000000, 0 #00FF00;
@@ -44,6 +44,6 @@
 </head>
 <body>
 <p>Test passes if you see particular rectangles of particular colors.</p>
-<div style="display: inline-block; font: 100px 'WebFont'; font-palette: Palette1;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: Palette2;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: Palette3;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: Palette4;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: Palette5;">A</div>
+<div style="display: inline-block; font: 100px 'WebFont'; font-palette: --Palette1;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: --Palette2;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: --Palette3;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: --Palette4;">A</div><div style="display: inline-block; font: 100px 'WebFont'; font-palette: --Palette5;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -18,6 +18,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -14,7 +14,7 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {
@@ -22,7 +22,7 @@
         let style = document.createElement("style");
         document.head.appendChild(style);
         style.sheet.insertRule(`
-            @font-palette-values MyPalette {
+            @font-palette-values --MyPalette {
                 font-family: "Ahem-COLR";
                 base-palette: 1;
             }`);

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -13,6 +13,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-add.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -14,7 +14,7 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {
@@ -22,7 +22,7 @@
         let style = document.createElement("style");
         document.head.appendChild(style);
         style.sheet.insertRule(`
-            @font-palette-values MyPalette {
+            @font-palette-values --MyPalette {
                 font-family: "Ahem-COLR";
                 base-palette: 1;
             }`);

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2-expected.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2-expected.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2-expected.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -13,6 +13,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-2.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -19,7 +19,7 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-expected-mismatch.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-expected-mismatch.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete-expected-mismatch.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,7 +11,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -18,6 +18,6 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/palette-values-rule-delete.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -12,7 +12,7 @@
     src: url("resources/Ahem-COLR-palettes.ttf") format("truetype");
 }
 
-@font-palette-values MyPalette {
+@font-palette-values --MyPalette {
     font-family: "Ahem-COLR";
     base-palette: 1;
 }
@@ -19,7 +19,7 @@
 </style>
 </head>
 <body>
-<div style="font: 48px 'Ahem-COLR'; font-palette: MyPalette;">A</div>
+<div style="font: 48px 'Ahem-COLR'; font-palette: --MyPalette;">A</div>
 <script>
 let count = 0;
 function tick() {

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt	2021-09-29 15:40:56 UTC (rev 283221)
@@ -3,5 +3,5 @@
 PASS Property font-palette value 'normal'
 PASS Property font-palette value 'light'
 PASS Property font-palette value 'dark'
-PASS Property font-palette value 'pitchfork'
+PASS Property font-palette value '--pitchfork'
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -16,7 +16,7 @@
 test_computed_value('font-palette', 'normal');
 test_computed_value('font-palette', 'light');
 test_computed_value('font-palette', 'dark');
-test_computed_value('font-palette', 'pitchfork');
+test_computed_value('font-palette', '--pitchfork');
 </script>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt	2021-09-29 15:40:56 UTC (rev 283221)
@@ -1,4 +1,5 @@
 
 PASS e.style['font-palette'] = "normal none" should not set the property value
 PASS e.style['font-palette'] = "none, light" should not set the property value
+PASS e.style['font-palette'] = "A" should not set the property value
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -13,6 +13,7 @@
 <script>
 test_invalid_value('font-palette', 'normal none');
 test_invalid_value('font-palette', 'none, light');
+test_invalid_value('font-palette', 'A');
 </script>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt	2021-09-29 15:40:56 UTC (rev 283221)
@@ -3,5 +3,5 @@
 PASS e.style['font-palette'] = "normal" should set the property value
 PASS e.style['font-palette'] = "light" should set the property value
 PASS e.style['font-palette'] = "dark" should set the property value
-PASS e.style['font-palette'] = "pitchfork" should set the property value
+PASS e.style['font-palette'] = "--pitchfork" should set the property value
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -15,7 +15,7 @@
 test_valid_value('font-palette', 'normal');
 test_valid_value('font-palette', 'light');
 test_valid_value('font-palette', 'dark');
-test_valid_value('font-palette', 'pitchfork');
+test_valid_value('font-palette', '--pitchfork');
 </script>
 </body>
 </html>

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -11,99 +11,102 @@
 @font-palette-values {
 }
 
-@font-palette-values A B {
+@font-palette-values A {
 }
 
+@font-palette-values --A --B {
+}
+
 /* 0 */
-@font-palette-values A {
+@font-palette-values --A {
     font-family: a, b;
 }
 
 /* 1 */
-@font-palette-values A {
+@font-palette-values --A {
     font-family: 1;
 }
 
 /* 2 */
-@font-palette-values A {
+@font-palette-values --A {
     font: 12px a;
 }
 
 /* 3 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: 1 2;
 }
 
 /* 4 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: ident;
 }
 
 /* 5 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: "a" "b";
 }
 
 /* 6 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: ;
 }
 
 /* 7 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: ident #123;
 }
 
 /* 8 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: 0 "red";
 }
 
 /* 9 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: 0 #123, 1;
 }
 
 /* 10 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: ;
 }
 
 /* 11 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: 0 #123 1;
 }
 
 /* 12 */
-@font-palette-values A {
+@font-palette-values --A {
     override-colors: 0;
 }
 
 /* 13 */
-@font-palette-values A {
+@font-palette-values --A {
     font-family: "";
 }
 
 /* 14 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: initial;
     override-colors: initial;
 }
 
 /* 15 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: inherit;
     override-colors: inherit;
 }
 
 /* 16 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: unset;
     override-colors: unset;
 }
 
 /* 17 */
-@font-palette-values A {
+@font-palette-values --A {
     base-palette: -1;
     override-color: -1 #123;
 }

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html (283220 => 283221)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html	2021-09-29 15:40:56 UTC (rev 283221)
@@ -9,16 +9,16 @@
 <script src=""
 <style id="style">
 /* 0 */
-@font-palette-values A {
+@font-palette-values --A {
 }
 
 /* 1 */
-@font-palette-values B {
+@font-palette-values --B {
     font-weight: 400;
 }
 
 /* 2 */
-@font-palette-values C {
+@font-palette-values --C {
     font-family: foo;
     font-family: bar;
     base-palette: 1;
@@ -30,7 +30,7 @@
 }
 
 /* 3 */
-@font-palette-values D {
+@font-palette-values --D {
     base-palette: "foo";
     base-palette: 1;
     base-palette: "bar";
@@ -40,53 +40,53 @@
 }
 
 /* 4 */
-@font-palette-values E {
+@font-palette-values --E {
     override-colors: 3 rgb(17, 34, 51);
     override-colors: 3 rgb(68, 85, 102);
 }
 
 /* 5 */
-@font-palette-values F {
+@font-palette-values --F {
     font-family: "foo";
 }
 
 /* 6 */
-@font-palette-values G {
+@font-palette-values --G {
     override-colors: 3 rgb(17, 34, 51), 4 rgb(68, 85, 102);
 }
 
 /* 7 */
-@font-palette-values H {
+@font-palette-values --H {
     override-colors: 3 rgb(17, 34, 51), 3 rgb(68, 85, 102);
 }
 
 /* 8 */
-@font-palette-values I {
+@font-palette-values --I {
     override-colors: 0 #0000FF;
 }
 
 /* 9 */
-@font-palette-values J {
+@font-palette-values --J {
     override-colors: 0 green;
 }
 
 /* 10 */
-@font-palette-values K {
+@font-palette-values --K {
     override-colors: 0 transparent;
 }
 
 /* 11 */
-@font-palette-values L {
+@font-palette-values --L {
     override-colors: 0 rgba(1 2 3 / 4);
 }
 
 /* 12 */
-@font-palette-values M {
+@font-palette-values --M {
     override-colors: 0 lab(29.2345% 39.3825 20.0664);
 }
 
 /* 13 */
-@font-palette-values N {
+@font-palette-values --N {
     override-colors: 0 color(display-p3 100% 100% 100%);
 }
 </style>
@@ -97,7 +97,7 @@
 test(function() {
     let text = rules[0].cssText;
     assert_not_equals(text.indexOf("@font-palette-values "), -1);
-    assert_not_equals(text.indexOf(" A "), -1);
+    assert_not_equals(text.indexOf(" --A "), -1);
     assert_not_equals(text.indexOf("{"), -1);
     assert_not_equals(text.indexOf("}"), -1);
     assert_equals(text.indexOf("font-family"), -1);
@@ -108,7 +108,7 @@
 test(function() {
     let rule = rules[0];
     assert_equals(rule.constructor.name, "CSSFontPaletteValuesRule");
-    assert_equals(rule.name, "A");
+    assert_equals(rule.name, "--A");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors, "");
@@ -121,7 +121,7 @@
 
 test(function() {
     let rule = rules[1];
-    assert_equals(rule.name, "B");
+    assert_equals(rule.name, "--B");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors, "");
@@ -141,7 +141,7 @@
 
 test(function() {
     let rule = rules[2];
-    assert_equals(rule.name, "C");
+    assert_equals(rule.name, "--C");
     assert_equals(rule.fontFamily, "bar");
     assert_equals(rule.basePalette, "2");
     assert_equals(rule.overrideColors, "\"b\" rgb(17, 34, 51)");
@@ -159,7 +159,7 @@
 
 test(function() {
     let rule = rules[3];
-    assert_equals(rule.name, "D");
+    assert_equals(rule.name, "--D");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "bar");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -175,7 +175,7 @@
 
 test(function() {
     let rule = rules[4];
-    assert_equals(rule.name, "E");
+    assert_equals(rule.name, "--E");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -190,7 +190,7 @@
 
 test(function() {
     let rule = rules[5];
-    assert_equals(rule.name, "F");
+    assert_equals(rule.name, "--F");
     assert_equals(rule.fontFamily, "foo");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors, "");
@@ -204,7 +204,7 @@
 
 test(function() {
     let rule = rules[6];
-    assert_equals(rule.name, "G");
+    assert_equals(rule.name, "--G");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.split("),").length, 2);
@@ -222,7 +222,7 @@
 
 test(function() {
     let rule = rules[7];
-    assert_equals(rule.name, "H");
+    assert_equals(rule.name, "--H");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_not_equals(rule.overrideColors.indexOf("),"), -1);
@@ -240,7 +240,7 @@
 
 test(function() {
     let rule = rules[8];
-    assert_equals(rule.name, "I");
+    assert_equals(rule.name, "--I");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -255,7 +255,7 @@
 
 test(function() {
     let rule = rules[9];
-    assert_equals(rule.name, "J");
+    assert_equals(rule.name, "--J");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -270,7 +270,7 @@
 
 test(function() {
     let rule = rules[10];
-    assert_equals(rule.name, "K");
+    assert_equals(rule.name, "--K");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -285,7 +285,7 @@
 
 test(function() {
     let rule = rules[11];
-    assert_equals(rule.name, "L");
+    assert_equals(rule.name, "--L");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -300,7 +300,7 @@
 
 test(function() {
     let rule = rules[12];
-    assert_equals(rule.name, "M");
+    assert_equals(rule.name, "--M");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);
@@ -315,7 +315,7 @@
 
 test(function() {
     let rule = rules[13];
-    assert_equals(rule.name, "N");
+    assert_equals(rule.name, "--N");
     assert_equals(rule.fontFamily, "");
     assert_equals(rule.basePalette, "");
     assert_equals(rule.overrideColors.indexOf("),"), -1);

Modified: trunk/Source/WebCore/ChangeLog (283220 => 283221)


--- trunk/Source/WebCore/ChangeLog	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/Source/WebCore/ChangeLog	2021-09-29 15:40:56 UTC (rev 283221)
@@ -1,5 +1,28 @@
 2021-09-29  Myles C. Maxfield  <[email protected]>
 
+        Font palette names have to start with two hyphens
+        https://bugs.webkit.org/show_bug.cgi?id=230790
+        <rdar://problem/83530013>
+
+        Reviewed by Dean Jackson.
+
+        The spec changed in
+        https://github.com/w3c/csswg-drafts/commit/9ddf9388a2fe0ac300c41b7244e10c0a40fe0cae.
+
+        Font palettes now have to be named with a <dashed-ident>.
+
+        Updated existing tests.
+
+        * css/parser/CSSParserImpl.cpp:
+        (WebCore::CSSParserImpl::consumeFontPaletteValuesRule):
+        * css/parser/CSSPropertyParser.cpp:
+        (WebCore::consumeFontPalette):
+        * css/parser/CSSPropertyParserHelpers.cpp:
+        (WebCore::CSSPropertyParserHelpers::consumeDashedCustomIdent):
+        * css/parser/CSSPropertyParserHelpers.h:
+
+2021-09-29  Myles C. Maxfield  <[email protected]>
+
         CSSFontPaletteValuesRule should not be maplike
         https://bugs.webkit.org/show_bug.cgi?id=230793
         <rdar://problem/83530242>

Modified: trunk/Source/WebCore/css/parser/CSSParserImpl.cpp (283220 => 283221)


--- trunk/Source/WebCore/css/parser/CSSParserImpl.cpp	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/Source/WebCore/css/parser/CSSParserImpl.cpp	2021-09-29 15:40:56 UTC (rev 283221)
@@ -661,7 +661,7 @@
 
 RefPtr<StyleRuleFontPaletteValues> CSSParserImpl::consumeFontPaletteValuesRule(CSSParserTokenRange prelude, CSSParserTokenRange block)
 {
-    auto name = CSSPropertyParserHelpers::consumeCustomIdent(prelude);
+    auto name = CSSPropertyParserHelpers::consumeDashedIdent(prelude);
     if (!name || !prelude.atEnd())
         return nullptr; // Parse error; expected custom ident in @font-palette-values header
 

Modified: trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp (283220 => 283221)


--- trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp	2021-09-29 15:40:56 UTC (rev 283221)
@@ -931,7 +931,7 @@
 {
     if (auto result = consumeIdent<CSSValueNone, CSSValueNormal, CSSValueLight, CSSValueDark>(range))
         return result;
-    return consumeCustomIdent(range);
+    return consumeDashedIdent(range);
 }
 
 static RefPtr<CSSValue> consumeFamilyName(CSSParserTokenRange& range)

Modified: trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp (283220 => 283221)


--- trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp	2021-09-29 15:40:56 UTC (rev 283221)
@@ -1356,6 +1356,14 @@
     return CSSValuePool::singleton().createCustomIdent(shouldLowercase ? identifier.convertToASCIILowercase() : identifier.toString());
 }
 
+RefPtr<CSSPrimitiveValue> consumeDashedIdent(CSSParserTokenRange& range, bool shouldLowercase)
+{
+    auto result = consumeCustomIdent(range, shouldLowercase);
+    if (result && result->stringValue().startsWith("--"))
+        return result;
+    return nullptr;
+}
+
 RefPtr<CSSPrimitiveValue> consumeString(CSSParserTokenRange& range)
 {
     if (range.peek().type() != StringToken)

Modified: trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.h (283220 => 283221)


--- trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.h	2021-09-29 15:39:26 UTC (rev 283220)
+++ trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.h	2021-09-29 15:40:56 UTC (rev 283221)
@@ -109,6 +109,7 @@
 template<CSSValueID... allowedIdents> RefPtr<CSSPrimitiveValue> consumeIdentWorkerSafe(CSSParserTokenRange&, CSSValuePool&);
 
 RefPtr<CSSPrimitiveValue> consumeCustomIdent(CSSParserTokenRange&, bool shouldLowercase = false);
+RefPtr<CSSPrimitiveValue> consumeDashedIdent(CSSParserTokenRange&, bool shouldLowercase = false);
 RefPtr<CSSPrimitiveValue> consumeString(CSSParserTokenRange&);
 StringView consumeUrlAsStringView(CSSParserTokenRange&);
 RefPtr<CSSPrimitiveValue> consumeUrl(CSSParserTokenRange&);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to