Copy the backdrop for non-isolated groups with a soft mask#21604
Conversation
PR mozilla#21455 drew non-isolated blend-mode groups against their backdrop via a direct path on the parent canvas, but a soft mask forces the group onto an intermediate canvas instead. There the inner blend modes composited against transparency, so e.g. a /Multiply highlight was painted opaquely over the text behind it, hiding it. Copy the backdrop into that intermediate canvas so the blends see the real background. The copy is limited to groups that would otherwise have taken the direct path (source-over, alpha 1, not knockout/gray) but were displaced onto the intermediate canvas by the soft mask. It fixes mozilla#21593.
|
/botio browsertest |
From: Bot.io (Linux m4)ReceivedCommand cmd_browsertest from @calixteman received. Current queue size: 0 Live output at: http://54.241.84.105:8877/8be36f06ed328fe/output.txt |
From: Bot.io (Windows)ReceivedCommand cmd_browsertest from @calixteman received. Current queue size: 0 Live output at: http://54.193.163.58:8877/cffb2348b6cf78c/output.txt |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #21604 +/- ##
==========================================
- Coverage 89.84% 89.84% -0.01%
==========================================
Files 263 263
Lines 66757 66764 +7
==========================================
+ Hits 59975 59981 +6
- Misses 6782 6783 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
From: Bot.io (Linux m4)FailedFull output at http://54.241.84.105:8877/8be36f06ed328fe/output.txt Total script time: 18.10 mins
Image differences available at: http://54.241.84.105:8877/8be36f06ed328fe/reftest-analyzer.html#web=eq.log |
From: Bot.io (Windows)FailedFull output at http://54.193.163.58:8877/cffb2348b6cf78c/output.txt Total script time: 25.81 mins
Image differences available at: http://54.193.163.58:8877/cffb2348b6cf78c/reftest-analyzer.html#web=eq.log |
timvandermeij
left a comment
There was a problem hiding this comment.
Looks good to me, also the reference test difference; thanks!
|
/botio makeref |
From: Bot.io (Linux m4)ReceivedCommand cmd_makeref from @timvandermeij received. Current queue size: 1 Live output at: http://54.241.84.105:8877/7a682b5751abe5a/output.txt |
From: Bot.io (Windows)ReceivedCommand cmd_makeref from @timvandermeij received. Current queue size: 1 Live output at: http://54.193.163.58:8877/e0c741d48c08c70/output.txt |
From: Bot.io (Linux m4)SuccessFull output at http://54.241.84.105:8877/7a682b5751abe5a/output.txt Total script time: 18.21 mins
|
From: Bot.io (Windows)SuccessFull output at http://54.193.163.58:8877/e0c741d48c08c70/output.txt Total script time: 25.56 mins
|
PR #21455 drew non-isolated blend-mode groups against their backdrop via a direct path on the parent canvas, but a soft mask forces the group onto an intermediate canvas instead. There the inner blend modes composited against transparency, so e.g. a /Multiply highlight was painted opaquely over the text behind it, hiding it.
Copy the backdrop into that intermediate canvas so the blends see the real background. The copy is limited to groups that would otherwise have taken the direct path (source-over, alpha 1, not knockout/gray) but were displaced onto the intermediate canvas by the soft mask.
It fixes #21593.