Created attachment 463015 [details] Screenshot showing lines instead of checkerboard Steps to reproduce: *(ios16+) Go to: https://codepen.io/jokeyrhyme/pen/OVVzem Expected result: *Result should display a checkerboard pattern Actual result: *In the codepen result, only one background is displayed, rendering lines only. See screenshot from ios 16 Additional info: This displays as a checkerboard in Firefox, Chrome and on iOS 15.7 but appears broken in iOS 16 so I would consider it a regression bug. Don't know if/how it may affect other areas of using multiple backgrounds using "linear-gradient" and "background-blend-mode: difference"
<rdar://problem/101257606>
This happens on macOS also.
I think this is a regression of r278062. This revision replaced the call to GraphicsContextCG::setPlatformCompositeOperation() by GraphicsContext::setCompositeOperation() in GraphicsContextCG::drawPattern(). setCompositeOperation() is platform independent and should not be called from GraphicsContextCG methods. Instead we should be calling GraphicsContextCG::setCGBlendMode(). Note: r280095 fixed a similar problem in drawNativeImage().
Pull request: https://github.com/WebKit/WebKit/pull/6280
Committed 256578@main (9ffcb90d8fa7): <https://commits.webkit.org/256578@main> Reviewed commits have been landed. Closing PR #6280 and removing active labels.