The issue only manifests on Windows and only if a view is being updated while it’s completely offscreen.
I was able to stop the UI from going black by commenting out renderTargett->clear(); on line 393 of d2ddrawcontext.cpp.
Here’s a video showing the issue, and how commenting out that line fixes the issue. If I leave that line commented out, am I going to experience any unwanted surprises?
void D2DDrawContext::clearRect (const CRect& rect)
{
if (renderTarget)
{
CRect oldClip = getCurrentState ().clipRect;
setClipRect (rect);
D2DApplyClip ac (this);
//renderTarget->Clear (D2D1::ColorF (1.f, 1.f, 1.f, 0.f));
setClipRect (oldClip);
}
}