Skip to content
  • dino@apple.com's avatar
    2009-03-25 Dean Jackson <dino@apple.com> · ce3a4e00
    dino@apple.com authored
            Reviewed by Simon Fraser
    
            https://bugs.webkit.org/show_bug.cgi?id=23361
    
            When using hardware compositing, some images can be directly
            rendered by the hardware - no need to draw them into a separate
            context, therefore saving memory.
            Only images with certain style properties can be directly
            composited - basically anything that is not a simple image requires
            the usual rendering path (eg. if the image has borders).
    
            Test: compositing/direct-image-compositing.html
    
            * manual-tests/resources/simple_image.png: Added.
            * manual-tests/simple-image-compositing.html: Added.
            * platform/graphics/Image.h:
            (WebCore::Image::startAnimation):
                - move this to public
            * rendering/RenderImage.cpp:
            (WebCore::RenderImage::imageChanged):
                - poke compositing layer if image has changed
            (WebCore::RenderImage::notifyFinished):
                - let the compositing layer know that it can render the image
            * rendering/RenderImage.h:
            * rendering/RenderLayer.cpp:
            (WebCore::RenderLayer::rendererContentChanged):
            * rendering/RenderLayer.h:
            * rendering/RenderLayerBacking.cpp:
            (WebCore::RenderLayerBacking::canUseInnerContentLayer):
            (WebCore::RenderLayerBacking::detectDrawingOptimizations):
            (WebCore::RenderLayerBacking::rendererContentChanged):
            * rendering/RenderLayerBacking.h:
                - code to hook up direct compositing of images where
                  possible
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@41996 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ce3a4e00