Skip to content
  • simon.fraser@apple.com's avatar
    2009-01-02 Simon Fraser <simon.fraser@apple.com> · f7d140d5
    simon.fraser@apple.com authored
            Reviewed by Darin Adler
    
            https://bugs.webkit.org/show_bug.cgi?id=22981
    
            Repaints inside of an SVGImage were thrown on the floor,
            which broke incremental painting due to loading, or SVG animation.
            Fix this by assigning the SVGImage a ChromeClient subclass that passes
            along repaints via a new method on ImageObserver, which also takes
            a rect parameter for the changed rect, allowing incremental repaints.
            Fix RenderImage::imageChanged to take advantage of this changedRect to
            only repaint the changed parts of the image.
    
            This also enables incremental painting for canvas-as-image, so
            add tests for that too.
    
            Tests: fast/backgrounds/animated-svg-as-background.html
                   fast/backgrounds/animated-svg-as-mask.html
                   fast/canvas/canvas-as-image-incremental-repaint.html
                   fast/canvas/canvas-as-image.html
                   fast/images/animated-svg-as-image.html
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39555 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    f7d140d5