Skip to content

Commit 829d1cd

Browse files
committed
fix to modern syntax, allowing <number>
1 parent c4ec7e8 commit 829d1cd

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

org/w3c/css/values/color/HSL.java

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,15 @@ public HSL() {
4141
}
4242

4343
/**
44-
* Parse HSL per
45-
*
46-
* @spec https://www.w3.org/TR/2025/CRD-css-color-4-20250424/#the-hsl-notation
47-
* @spec https://www.w3.org/TR/2025/WD-css-color-5-20250318/#relative-HSL
44+
* Parse HSL per
4845
*
4946
* @param ac
5047
* @param exp
5148
* @param caller
5249
* @return
5350
* @throws InvalidParamException
51+
* @spec https://www.w3.org/TR/2025/CRD-css-color-4-20250424/#the-hsl-notation
52+
* @spec https://www.w3.org/TR/2025/WD-css-color-5-20250318/#relative-HSL
5453
*/
5554

5655
public static final HSL parseHSL(ApplContext ac, CssExpression exp, CssColor caller)
@@ -154,6 +153,10 @@ public static final HSL parseHSL(ApplContext ac, CssExpression exp, CssColor cal
154153

155154
// S
156155
switch (val.getType()) {
156+
case CssTypes.CSS_NUMBER:
157+
if (!separator_space) {
158+
throw new InvalidParamException("colorfunc", val, "HSL", ac);
159+
}
157160
case CssTypes.CSS_PERCENTAGE:
158161
case CssTypes.CSS_VARIABLE:
159162
hsl.setSaturation(ac, val);
@@ -180,6 +183,10 @@ public static final HSL parseHSL(ApplContext ac, CssExpression exp, CssColor cal
180183

181184
// L
182185
switch (val.getType()) {
186+
case CssTypes.CSS_NUMBER:
187+
if (!separator_space) {
188+
throw new InvalidParamException("colorfunc", val, "HSL", ac);
189+
}
183190
case CssTypes.CSS_PERCENTAGE:
184191
case CssTypes.CSS_VARIABLE:
185192
hsl.setLightness(ac, val);
@@ -268,7 +275,8 @@ public static final CssValue filterValue(ApplContext ac, CssValue val)
268275
// TODO add warning about uncheckability
269276
// might need to extend...
270277
} else {
271-
if (val.getType() == CssTypes.CSS_PERCENTAGE) {
278+
if ((val.getType() == CssTypes.CSS_PERCENTAGE) ||
279+
(val.getType() == CssTypes.CSS_NUMBER)) {
272280
CssCheckableValue v = val.getCheckableValue();
273281
if (!v.warnPositiveness(ac, "RGB")) {
274282
CssNumber nb = new CssNumber();
@@ -281,6 +289,8 @@ public static final CssValue filterValue(ApplContext ac, CssValue val)
281289
ac.getFrame().addWarning("out-of-range", Util.displayFloat(p));
282290
return new CssPercentage(100);
283291
}
292+
} else if (val.getRawType() == CssTypes.CSS_NUMBER) {
293+
val.getNumber().warnLowerEqualThan(ac, 100., null);
284294
}
285295
}
286296
}

0 commit comments

Comments
 (0)