[zoom] Make zoom continuously interpolatable behind a flag [chromium/src : main]

0 views
Skip to first unread message

Jason Leo (Gerrit)

unread,
May 5, 2026, 9:16:53 PM (5 days ago) May 5
to Anders Hartvoll Ruud, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, Olga Gerchikov, apavlo...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Anders Hartvoll Ruud

Jason Leo added 1 comment

Patchset-level comments
File-level comment, Patchset 2 (Latest):
Jason Leo . resolved

Please take a look

Open in Gerrit

Related details

Attention is currently required from:
  • Anders Hartvoll Ruud
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I5dee54793269a9751a33e9904484af99911a88c1
Gerrit-Change-Number: 7819114
Gerrit-PatchSet: 2
Gerrit-Owner: Jason Leo <cg...@chromium.org>
Gerrit-Reviewer: Anders Hartvoll Ruud <and...@chromium.org>
Gerrit-Reviewer: Jason Leo <cg...@chromium.org>
Gerrit-CC: Menard, Alexis <alexis...@intel.com>
Gerrit-CC: Olga Gerchikov <gerc...@microsoft.com>
Gerrit-Attention: Anders Hartvoll Ruud <and...@chromium.org>
Gerrit-Comment-Date: Wed, 06 May 2026 01:16:44 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Rune Lillesveen (Gerrit)

unread,
May 6, 2026, 5:19:33 AM (4 days ago) May 6
to Jason Leo, Rune Lillesveen, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, Olga Gerchikov, apavlo...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Jason Leo

Rune Lillesveen added 3 comments

File third_party/blink/renderer/core/animation/css_zoom_interpolation_type.cc
Line 26, Patchset 2 (Latest): if (!primitive_value || !primitive_value->IsPercentage()) {
Rune Lillesveen . unresolved

I'm not too familiar with which functions do what in the interpolation types, but we do we need a separate interpolation type for zoom, as opposed to opacity, because percentages are not turned into numbers at parse time?

Line 36, Patchset 2 (Latest):}
Rune Lillesveen . unresolved

Isn't this code exercised? (missing coverage according to gerrit)

File third_party/blink/web_tests/external/wpt/css/css-viewport/animations/zoom-interpolation.html
Line 5, Patchset 2 (Latest):<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10872">
Rune Lillesveen . unresolved

I added "Needs Edits" to the issue. Ideally, this should be .tentative.html until the spec actually changes, but this is trivial enough to not do that.

Open in Gerrit

Related details

Attention is currently required from:
  • Jason Leo
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I5dee54793269a9751a33e9904484af99911a88c1
    Gerrit-Change-Number: 7819114
    Gerrit-PatchSet: 2
    Gerrit-Owner: Jason Leo <cg...@chromium.org>
    Gerrit-Reviewer: Jason Leo <cg...@chromium.org>
    Gerrit-Reviewer: Rune Lillesveen <fut...@chromium.org>
    Gerrit-Attention: Jason Leo <cg...@chromium.org>
    Gerrit-Comment-Date: Wed, 06 May 2026 09:19:14 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    一丝 (Gerrit)

    unread,
    May 6, 2026, 5:55:01 AM (4 days ago) May 6
    to Jason Leo, Rune Lillesveen, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, Olga Gerchikov, apavlo...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
    Attention needed from Jason Leo

    一丝 added 1 comment

    File third_party/blink/web_tests/external/wpt/css/css-viewport/animations/zoom-interpolation.html
    Rune Lillesveen . unresolved

    I added "Needs Edits" to the issue. Ideally, this should be .tentative.html until the spec actually changes, but this is trivial enough to not do that.

    一丝

    I can submit a PR to the CSSWG.

    Gerrit-CC: 一丝 <yio...@gmail.com>
    Gerrit-Attention: Jason Leo <cg...@chromium.org>
    Gerrit-Comment-Date: Wed, 06 May 2026 09:54:54 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Rune Lillesveen <fut...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Jason Leo (Gerrit)

    unread,
    9:51 AM (3 hours ago) 9:51 AM
    to 一丝, Rune Lillesveen, android-bu...@system.gserviceaccount.com, Chromium LUCI CQ, Menard, Alexis, chromium...@chromium.org, Olga Gerchikov, apavlo...@chromium.org, blink-revie...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
    Attention needed from Rune Lillesveen and 一丝

    Jason Leo added 3 comments

    File third_party/blink/renderer/core/animation/css_zoom_interpolation_type.cc
    Line 26, Patchset 2: if (!primitive_value || !primitive_value->IsPercentage()) {
    Rune Lillesveen . resolved

    I'm not too familiar with which functions do what in the interpolation types, but we do we need a separate interpolation type for zoom, as opposed to opacity, because percentages are not turned into numbers at parse time?

    Jason Leo

    Right — opacity uses `ConsumeAlphaValue` → `ConsumeNumberOrPercent`, which normalizes a literal n% to a plain kNumber (val/100) at parse time, so by the time `CSSNumberInterpolationType::MaybeConvertValue` sees it, IsNumber() is true and the percent branch never executes.

    `Zoom::ParseSingleValue` calls `ConsumePercent` directly (and separately `ConsumeNumber`), so percentages survive parse time as `kPercentage`. The base MaybeConvertValue rejects them with `!primitive_value->IsNumber()`. Hence the override here.

    We could alternatively switch the parser to `ConsumeNumberOrPercent` and drop this subclass entirely, but that changes the specified-value representation of zoom: 50% (round-trips through getPropertyValue differently for parsed-but-not-yet-cascaded values). Keeping the override felt less invasive — happy to flip if you'd prefer the parser route.

    Rune Lillesveen . unresolved

    Isn't this code exercised? (missing coverage according to gerrit)

    Jason Leo

    Not sure, added another case of `sibling-index` for test `IsElementDependent` case

    File third_party/blink/web_tests/external/wpt/css/css-viewport/animations/zoom-interpolation.html
    Line 5, Patchset 2:<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/10872">
    Rune Lillesveen . resolved

    I added "Needs Edits" to the issue. Ideally, this should be .tentative.html until the spec actually changes, but this is trivial enough to not do that.

    一丝

    I can submit a PR to the CSSWG.

    Jason Leo

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Rune Lillesveen
    • 一丝
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I5dee54793269a9751a33e9904484af99911a88c1
    Gerrit-Change-Number: 7819114
    Gerrit-PatchSet: 3
    Gerrit-Owner: Jason Leo <cg...@chromium.org>
    Gerrit-Reviewer: Jason Leo <cg...@chromium.org>
    Gerrit-Reviewer: Rune Lillesveen <fut...@chromium.org>
    Gerrit-CC: Menard, Alexis <alexis...@intel.com>
    Gerrit-CC: Olga Gerchikov <gerc...@microsoft.com>
    Gerrit-CC: 一丝 <yio...@gmail.com>
    Gerrit-Attention: Rune Lillesveen <fut...@chromium.org>
    Gerrit-Attention: 一丝 <yio...@gmail.com>
    Gerrit-Comment-Date: Sun, 10 May 2026 13:50:33 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Rune Lillesveen <fut...@chromium.org>
    Comment-In-Reply-To: 一丝 <yio...@gmail.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy
    Reply all
    Reply to author
    Forward
    0 new messages