Skip to content
  • Anders Hartvoll Ruud's avatar
    54100d54
    [anchor] Support anchor()/anchor-size() in CSS Animations · 54100d54
    Anders Hartvoll Ruud authored
    The CSS Animations machinery does not use the StyleCascade/CSSProperty
    code paths which handle CSSValue resolution and the AnchorScope
    setup. Without an AnchorScope, any anchor query will fail to evaluate,
    causing the fallback to be taken instead. If the fallback is not
    present, however, we'll hit a CHECK, because that situation was
    supposed to be already handled by StyleCascade::Resolve at an earlier
    stage.
    
    To take care of the IACVT issue, CSSMathFunction values are now resolved
    through CSSInterpolationEnvironment::Resolve, which in turns calls
    StyleCascade::Resolve). In addition, we need an AnchorScope
    before ApplyStandardPropertyValue, which is where calls to ComputeLength
    (and thus anchor query evaluation) take place.
    
    It's possible that we're invalidating conversions a bit too much
    (ResolvedValueChecker), but investigating whether or not that
    is even avoidable will be treated as a separate issue.
    
    Bug: 347031399
    Change-Id: I44193862978e13af106f80fe0696f23cb94a9239
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5676550
    
    
    Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
    Reviewed-by: default avatarRune Lillesveen <futhark@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1323591}
    54100d54
    [anchor] Support anchor()/anchor-size() in CSS Animations
    Anders Hartvoll Ruud authored
    The CSS Animations machinery does not use the StyleCascade/CSSProperty
    code paths which handle CSSValue resolution and the AnchorScope
    setup. Without an AnchorScope, any anchor query will fail to evaluate,
    causing the fallback to be taken instead. If the fallback is not
    present, however, we'll hit a CHECK, because that situation was
    supposed to be already handled by StyleCascade::Resolve at an earlier
    stage.
    
    To take care of the IACVT issue, CSSMathFunction values are now resolved
    through CSSInterpolationEnvironment::Resolve, which in turns calls
    StyleCascade::Resolve). In addition, we need an AnchorScope
    before ApplyStandardPropertyValue, which is where calls to ComputeLength
    (and thus anchor query evaluation) take place.
    
    It's possible that we're invalidating conversions a bit too much
    (ResolvedValueChecker), but investigating whether or not that
    is even avoidable will be treated as a separate issue.
    
    Bug: 347031399
    Change-Id: I44193862978e13af106f80fe0696f23cb94a9239
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5676550
    
    
    Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
    Reviewed-by: default avatarRune Lillesveen <futhark@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1323591}
Loading