Created attachment 126400 [details] extremely preliminary patch We should support things like this: background: -webkit-cross-fade(-webkit-cross-fade(-webkit-canvas(squares), -webkit-canvas(thirdsquares), 0.5), -webkit-canvas(othersquares), 0.5); or this: background: -webkit-cross-fade(-webkit-linear-gradient(red, blue), url("apple.gif"), 0.5); <rdar://problem/10459872>
I want to do some additional reorganization of CSSImageValue and co. to make this patch much smaller. Also, it still does some things I don't like. Still, it's a start! Also, it fixes animated-GIF-in-cross-fade, but I'll be splitting that out and attaching the (tiny) patch required to that bug.
Comment on attachment 126400 [details] extremely preliminary patch Attachment 126400 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/11486469 New failing tests: css3/images/cross-fade-tiled.html animations/cross-fade-border-image-source.html transitions/cross-fade-border-image.html css3/images/cross-fade-simple.html css3/images/cross-fade-invalidation.html transitions/cross-fade-background-image.html animations/cross-fade-list-style-image.html animations/cross-fade-webkit-mask-image.html css3/images/cross-fade-blending.html css3/images/cross-fade-overflow-position.html animations/cross-fade-webkit-mask-box-image.html animations/cross-fade-background-image.html css3/images/cross-fade-sizing.html
*** Bug 79772 has been marked as a duplicate of this bug. ***
*** Bug 90828 has been marked as a duplicate of this bug. ***
Once https://bugs.webkit.org/show_bug.cgi?id=246594 lands, this should be relatively straightforward to do. Taking this.