Skip to content
  • betravis@adobe.com's avatar
    [CSS Shapes] Shape-Image-Threshold should be animatable · ca9a5e62
    betravis@adobe.com authored
    https://bugs.webkit.org/show_bug.cgi?id=122622
    
    Reviewed by Darin Adler.
    
    Source/WebCore:
    
    Make the shape-image-threshold property respond to dynamic changes
    made through JS or CSS animations. Responding to changes made to
    shape-image-threshold is handled in RenderBox::updateShapeOutsideInfoAfterStyleChange,
    while CSSPropertyAnimation.cpp adds the property to the list of
    animatable properties.
    
    Tests: fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-image-threshold.html
           fast/shapes/shape-outside-floats/shape-outside-shape-image-threshold-animation.html
    
    * page/animation/CSSPropertyAnimation.cpp:
    (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Add
    shape-image-threshold to the list of animatable properties.
    * rendering/RenderBox.cpp:
    (WebCore::RenderBox::styleDidChange): updateShapeOutsideInfoAfterStyleChange
    needs to take two RenderStyle arguments to compare multiple shape properties,
    rather than just the shape-outside property.
    (WebCore::RenderBox::updateShapeOutsideInfoAfterStyleChange): Compare
    shape-image-threshold values to see if they changed, and invalidate the layout
    if necessary.
    * rendering/RenderBox.h:
    
    LayoutTests:
    
    Adding tests for dynamically changing shape-image threshold via JS and CSS
    animations. Included are some SVG resources used as the shape image sources.
    
    * fast/shapes/resources/svg-shape-002.svg: Added.
    * fast/shapes/resources/svg-shape-003.svg: Added.
    * fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-image-threshold-expected.html: Added.
    * fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-image-threshold.html: Added.
    * fast/shapes/shape-outside-floats/shape-outside-shape-image-threshold-animation-expected.txt: Added.
    * fast/shapes/shape-outside-floats/shape-outside-shape-image-threshold-animation.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@157309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ca9a5e62