Skip to content
  • simon.fraser@apple.com's avatar
    2009-06-23 Simon Fraser <simon.fraser@apple.com> · ef9dafe5
    simon.fraser@apple.com authored
            Reviewed by Dave Hyatt.
    
            https://bugs.webkit.org/show_bug.cgi?id=24863
    
            Fix reflection painting on elements with compositing layers.
    
            Test: compositing/reflections/reflection-on-composited.html
    
            * rendering/RenderLayer.h:
            Add a new PaintLayerPaintingReflection flag which is set while painting inside
            reflections.
            (WebCore::RenderLayer::setPaintingInsideReflection):
            Add a setter so that RenderLayerBacking can call it.
    
            * rendering/RenderLayer.cpp:
            (WebCore::shouldDoSoftwarePaint):
            Utility to clarify the logic of when a composited layer should do a software paint.
    
            (WebCore::RenderLayer::paintLayer):
            Use shouldDoSoftwarePaint() to determine when to software-paint a reflected layer.
            Remove transform-related tests from the reflection-painting if test because they appear
            to be unnecessary.
    
            * rendering/RenderLayerBacking.cpp:
            (WebCore::RenderLayerBacking::paintIntoLayer):
            Add the code to paint reflections to the composited layer painting method.
    
            * rendering/RenderReplica.cpp:
            (WebCore::RenderReplica::paint):
            Set the PaintLayerPaintingReflection flag.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@45005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ef9dafe5