[Webkit-unassigned] [Bug 250882] BackgroundPainter::paintFillLayers should check box-shadow when finding an opaque layer.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jan 19 20:43:19 PST 2023


https://bugs.webkit.org/show_bug.cgi?id=250882

Karl Dubost <karlcow at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |BrowserCompat
                 CC|                            |koivisto at iki.fi

--- Comment #1 from Karl Dubost <karlcow at apple.com> ---
There is a FIXME in the source code. 
https://searchfox.org/wubkat/rev/5b1acc527ab5b10c9d9e4dd21fcec68e315790c2/Source/WebCore/rendering/BackgroundPainter.cpp#122-132

And the code was last edited by antti
but the FIXME predates this 

Adding occlusion detection to reduce overdraw in RenderBox background rendering 
Justin Novosad, Fri, 23 Nov 2012 18:43:51 +0000
added in https://searchfox.org/wubkat/commit/71cbe979b543bafb933abdd82a03d72df95c7e0e

// Stop traversal when an opaque layer is encountered.
// FIXME: It would be possible for the following occlusion culling test to be more aggressive
// on layers with no repeat by testing whether the image covers the layout rect.
// Testing that here would imply duplicating a lot of calculations that are currently done in
// BackgroundPainter::paintFillLayer. A more efficient solution might be to move
// the layer recursion into paintFillLayer, or to compute the layer geometry here
// and pass it down.

// The clipOccludesNextLayers condition must be evaluated first to avoid short-circuiting.
if (layer->clipOccludesNextLayers(layer == &fillLayer) && layer->hasOpaqueImage(m_renderer) && layer->image()->canRender(&m_renderer, m_renderer.style().effectiveZoom()) && layer->hasRepeatXY() && layer->blendMode() == BlendMode::Normal)
        break;

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230120/afd78a3d/attachment-0001.htm>


More information about the webkit-unassigned mailing list