<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">Could the flashing problem be related to the timing problem described in <a href="https://bugs.openjdk.java.net/browse/JDK-8209329" class="">JDK-8209329</a>?</div><div class=""><br class=""></div><div class="">I have noticed occasional red flashes using Metal, which I suspect are caused by trying to render uninitialized data.</div><div class="">(I’m guessing that the red is a debugging aid provided by Apple. Previously, they used yellow.)</div><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On May 29, 2021, at 12:22 AM, Alexey Ushakov <<a href="mailto:avu@openjdk.java.net" class="">avu@openjdk.java.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">On Wed, 26 May 2021 13:49:24 GMT, Alexey Ushakov <<a href="mailto:avu@openjdk.org" class="">avu@openjdk.org</a>> wrote:<br class=""><br class=""><blockquote type="cite" class="">Set black color for underlying window background to perform correct blending operations in metal with window surface destination<br class=""></blockquote><br class="">Looks like the second option won't work because the result of blending will still be mixed with the NSWindow background color. Also, I tried several more approaches (Use only rgb blending, make the layer opaque). They helped to resolve the test issues but caused regressions in other areas (SwingSet2 tree for example). So, now I think that the only working solution is presented here (to set the background color of the window) <br class=""><br class=""><blockquote type="cite" class="">Yes, looks like we have the flashing problem back. It seems more serious than this particular bug.<br class="">We have two options here:<br class=""><br class="">1. accept this behavior for metal (It would be not a problem if we implement  JDK-8265445)<br class="">2. reimplement all the composing operations via shaders instead of using metal blending rules<br class=""></blockquote><br class="">-------------<br class=""><br class="">PR: <a href="https://git.openjdk.java.net/jdk/pull/4206" class="">https://git.openjdk.java.net/jdk/pull/4206</a><br class=""><br class=""></div></div></blockquote></div><br class=""></body></html>