RenderBox::applyVisualEffectOverflow() and RenderBox::outlineBoundsForRepaint() have different logic for combining outline/shadow extents, and give different answers on an element like: .box { margin: 30px; width: 50%; height: 500px; border: 12px solid gray; outline: 5px solid green; box-shadow: 0 0 0px 20px black; }
RenderBox 0x138003430 outlineBoundsForRepaint - outline bounds (-25,-25) width=225 height=574 bigger than visual overflow (-20,-20) width=215 height=564
These should give the same result: applyVisualEffectOverflow(borderBoxRect()) and LayoutRect box = borderBoundingBox(); adjustRectForOutlineAndShadow(box);
<rdar://problem/118582062>
Pull request: https://github.com/WebKit/WebKit/pull/20961
Committed 271254@main (6aa1f6767674): <https://commits.webkit.org/271254@main> Reviewed commits have been landed. Closing PR #20961 and removing active labels.