https://bugs.winehq.org/show_bug.cgi?id=50743
Bug ID: 50743 Summary: .NET Core WPF applications with layered windows do not initially render Product: Wine Version: 6.3 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: winex11.drv Assignee: wine-bugs@winehq.org Reporter: madewokherd@gmail.com Distribution: ---
Found while working on WPF in Wine Mono. I've committed a work-around to Wine Mono (not yet in a release), but the bug is present in .NET Core as well.
For any application using a WPF window with AllowsTransparency set to true (which makes it a layered window), the window's contents are initially an opaque black fill. Fully transparent areas are still transparent. If part of the window redraws (such as from a hover effect), the refreshed area draws correctly.
I'm working on uploading a self-contained test case. Unfortunately, the archive exceeds the file size limit.
The work-around in Wine Mono is to redraw the entire window in response to WM_WINDOWPOSCHANGED messages.
The code that controls this can be found here: https://github.com/dotnet/wpf/blob/release/3.1/src/Microsoft.DotNet.Wpf/src/...
There are a lot of cases where they redraw, but the relevant ones here are probably WM_SIZE and WM_SHOWWINDOW.
I tried the test program in CrossOver Mac 20, and it rendered correctly. This makes me think it's an X11-specific issue, but it could also be related to version difference.
https://bugs.winehq.org/show_bug.cgi?id=50743
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |http://madewokherd.nfshost. | |com/omgsecret/WpfLayeredTes | |t.7z Keywords| |dotnet, download, source, | |testcase
--- Comment #1 from Esme Povirk madewokherd@gmail.com --- http://madewokherd.nfshost.com/omgsecret/WpfLayeredTest.7z has a self-contained testcase at WpfLayeredTest/bin/Release/netcoreapp3.1/win-x86/WpfLayeredTest.exe
https://bugs.winehq.org/show_bug.cgi?id=50743
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=50743
Giovanni Mascellani gmascellani@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gmascellani@codeweavers.com
--- Comment #2 from Giovanni Mascellani gmascellani@codeweavers.com --- Patch https://source.winehq.org/patches/data/204655 is not ready for release, but might solve this problem.
https://bugs.winehq.org/show_bug.cgi?id=50743
nekoNexus@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |nekoNexus@protonmail.ch