-
Notifications
You must be signed in to change notification settings - Fork 709
[css-color-hdr] Add interpolation between multiple values of dynamic-range-limit #10271
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Actually, I think it would be preferable to switch the In other words:
|
Thank you for the feedback. Out of curiosity, may I ask about the name change? |
I think the hard part is is defining what is the computed value for this sort of thing:
The math of this is: The syntax that @svgeesus suggested extends well to handle this, by just allowing one to say that that evaluates to:
|
Is there a way this might be implemented to allow absolute HDR headroom limits which would affect the rendering, yet still keep the source site blind to the output in order to ensure anti-fingerprinting objectives are met? For example, it may be ideal to allow up to 2 stops of headroom for HDR content alongside SDR. The other proposed mechanisms would either cause unnecessary limitations below that target, or may allow brighter results if the display has an unusually large amount of headroom (which could apply now with certain Windows SDR brightness slider settings, or with future brighter displays). |
No,
I note that, following the link, this is still called |
Yes, the current naming convention is indeed |
Returning to the issue of interpolation between more than 2 enums, is there any objection to updating the functional to support the form:
This would mean the syntax would be updated to be:
The changes here are that the percentage is no longer optional, and there may be more than two parameters. Some of the options for interpolating using
I'll put out a patch to update this. |
Added PR for spec changes here: #11086 |
I merged the PR. We should really get a WG resolution on this, before the spec goes to FPWD. |
The change can now be seen in the spec: 2.5. Computed Value for so the proposed resolution is "Accept these edits" or alternatively, revert the PR. |
Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d
Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameron@chromium.org> Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/main@{#1375223}
Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameron@chromium.org> Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/main@{#1375223}
The WPT tests are merged, results here |
The CSS Working Group just discussed
The full IRC log of that discussion<noamr> Chris: we have this dynamic range value. but you might have more than value, e.g. in animation, need to decide what happens<noamr> ChrisL: we have a PR, we either should merge it or revert. I think it's a good syntax <noamr> astearns: inclined to accept the PR <noamr> ChrisL: I prefer to review things in place <noamr> astearns: objections? <TabAtkins> RESOLVED: Accept the PR |
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameron@chromium.org> Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/main@{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982
PR merged, WPT added to spec. |
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameron@chromium.org> Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/main@{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameronchromium.org> Reviewed-by: Kevin Babbitt <kbabbittmicrosoft.com> Reviewed-by: Rune Lillesveen <futharkchromium.org> Cr-Commit-Position: refs/heads/main{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982 UltraBlame original commit: 5cafbcdaa670bbb57218487e1211031ef76a7acf
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameronchromium.org> Reviewed-by: Kevin Babbitt <kbabbittmicrosoft.com> Reviewed-by: Rune Lillesveen <futharkchromium.org> Cr-Commit-Position: refs/heads/main{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982 UltraBlame original commit: 5cafbcdaa670bbb57218487e1211031ef76a7acf
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameronchromium.org> Reviewed-by: Kevin Babbitt <kbabbittmicrosoft.com> Reviewed-by: Rune Lillesveen <futharkchromium.org> Cr-Commit-Position: refs/heads/main{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982 UltraBlame original commit: 5cafbcdaa670bbb57218487e1211031ef76a7acf
…range-limit-mix, add WPT tests, a=testonly Automatic update from web-platform-tests CSS dynamic-range-limit: Update dynamic-range-limit-mix, add WPT tests Update the behavior of dynamic-range-limit to reflect the spec changes in the issue w3c/csswg-drafts#10271 and the PR w3c/csswg-drafts#11086. Add assorted unit tests. Add WPT tests for computed value, parsing, inheritance, and interpolation. Bug: 40277822 Change-Id: I0fcd81538546a7428080dc691ba91ccc7803f59d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5501416 Commit-Queue: ccameron chromium <ccameron@chromium.org> Reviewed-by: Kevin Babbitt <kbabbitt@microsoft.com> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/main@{#1375223} -- wpt-commits: 56e4ec631d6402082905a3f61ad2c6c507e25ff6 wpt-pr: 45982
This came up when writing WPT tests for
dynamic-range-limit
.The
dynamic-range-limit
specification allows for interpolation between twodynamic-range-limit
values by thedynamic-range-limit-mix
function. It was pointed out that interpolation between multiple different values may happen implicitly during animation.The syntax chosen in the spec lends itself to fixing this issue fairly simply. The current syntax is
The suggestion that I was given was to change this to
Example: Halfway between
standard
andhigh
.This is the same as the existing syntax.
Example: One-fifth between
constrained-high
anddynamic-range-limit-mix(standard 40%, high 60%)
:this simplifies to
Notes
In the syntax we didn't allow percentages to be omitted (cause it can get a bit difficult to define more than one unspecified value, unlike
color-mix
which has natural definitions).If the sum of the arguments' percentages is
0%
, then the function fails.The arguments' percentages are normalized so that they add to
100%
.The percent for
standard
,high
, andconstrained-high
is computed as the of the weighted sum of its percents in each argument.I'll try to put together a patch that does this.
The text was updated successfully, but these errors were encountered: