Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f9519e7ea110c2e4e06f3a34a690b0f596a3f879
      
https://github.com/WebKit/WebKit/commit/f9519e7ea110c2e4e06f3a34a690b0f596a3f879
  Author: Sam Weinig <[email protected]>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M Source/WebCore/Headers.cmake
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/animation/BlendingKeyframes.cpp
    M Source/WebCore/animation/BlendingKeyframes.h
    M Source/WebCore/animation/KeyframeEffect.cpp
    M Source/WebCore/css/CSSKeyframeRule.cpp
    M Source/WebCore/css/CSSKeyframeRule.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Animations.cpp
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Animations.h
    M Source/WebCore/css/parser/CSSPropertyParserConsumer+Grid.cpp
    A Source/WebCore/css/values/primitives/CSSPrimitiveNumeric+Forward.h
    M Source/WebCore/css/values/primitives/CSSPrimitiveNumeric.h
    M Source/WebCore/css/values/primitives/CSSPrimitiveNumericRange.h
    M Source/WebCore/style/StyleResolver.cpp
    M Source/WebCore/style/values/animations/StyleSingleAnimationRangeName.h

  Log Message:
  -----------
  Move use of deprecatedToStyle out of CSS keyframe selector parsing
https://bugs.webkit.org/show_bug.cgi?id=318231

Reviewed by Antoine Quint.

Moves use of Style::deprecatedToStyle out of <keyframe-selector> parsing and
down into the places where the keyframes are processed.

This allows us to better understand what code needs to change to actually
resolve the deprecated conversion.

* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/values/primitives/CSSPrimitiveNumeric+Forward.h: Added.
    - Adds CSSPrimitiveNumeric+Forward.h, modeled on 
StylePrimitiveNumeric+Forward.h.

* Source/WebCore/css/values/primitives/CSSPrimitiveNumeric.h:
    - Renames CSS::dynamicRangecast to CSS::dynamicRangeNarrowingCast and 
restricts it to cases
      where the range is getting narrowed (e.g. CSS::All to CSS::Nonnegative).
    - Adds CSS::rangeExpandingCast, restricted to expanding range ranges.

* Source/WebCore/css/values/primitives/CSSPrimitiveNumericRange.h:
    - Add some helpers for use in range cast restrictions.

* Source/WebCore/css/CSSKeyframeRule.cpp:
* Source/WebCore/css/CSSKeyframeRule.h:
    - Stores parsed offset as a CSS::Percentage<> instead of a double in 
StyleRuleKeyframe::Key.

* Source/WebCore/animation/BlendingKeyframes.h:
* Source/WebCore/animation/BlendingKeyframes.cpp:
    - Use Style::Percentage<> for the specified offset value. In a followup, 
changing the
      computed offset to use Markable<Style::Percentage<>> would be a good 
additional improvement.

* Source/WebCore/animation/KeyframeEffect.cpp:
    - Perform the deprecated style conversion, clamping to 0-100 when 
appropriate.

* Source/WebCore/style/StyleResolver.cpp:
    - Perform the deprecated style conversion, clamping to 0-100 when 
appropriate.
    - Remove custom traits for StyleRuleKeyframe::Key by utilizing the built in 
std::tuple traits
      already being used.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Animations.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Animations.h:
    - Remove use of deprecatedToStyle(), returning CSS::Percentage<> instead.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Grid.cpp:
    - Update for rename to CSS::dynamicRangeNarrowingCast.

* Source/WebCore/style/values/animations/StyleSingleAnimationRangeName.h:
    - Add trivial traits for the SingleAnimationRangeName enum.

Canonical link: https://commits.webkit.org/316393@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to