Bug 310405

Summary: REGRESSION(306531@main): imported/w3c/web-platform-tests/html/canvas/element/manual/filters/canvas-filter-shadow-and-properties.html is a constant IMAGE failure on macOS 26.4
Product: WebKit Reporter: Said Abou-Hallawa <sabouhallawa>
Component: CanvasAssignee: Said Abou-Hallawa <sabouhallawa>
Status: RESOLVED FIXED    
Severity: Normal CC: sabouhallawa, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=306630

Said Abou-Hallawa
Reported 2026-03-20 17:29:23 PDT
On macOS 26.4, CG draws CSS filters and canvas filters. If canvas context is set to apply both `filter` and `shadow` properties (shadowColor, shadowBlur, shadowOffsetX and shadowOffsetY), the shadow properties will be dropped. Even if we manage to keep the shadow properties, the calculations of the transparency layer outsets are missing the shadow properties. More importantly CG filters makes drawing the filter and shadow interleave: canvas drawing -> filter -> shadow -> filter But this is different from what is expected: canvas drawing -> shadow -> filter This is an edge case (like canvas-filter-shadow-and-properties.html). The canvas `filter` should be used instead of using the `shadow` properties. Combing them should not happen in practice. So for this edge case, we can just fall back to software filters.
Attachments
Said Abou-Hallawa
Comment 1 2026-03-20 17:30:06 PDT
Said Abou-Hallawa
Comment 2 2026-03-20 17:44:57 PDT
EWS
Comment 3 2026-03-21 13:33:33 PDT
Committed 309689@main (1243de61a95c): <https://commits.webkit.org/309689@main> Reviewed commits have been landed. Closing PR #61052 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.