Alexandre Julliard pushed to branch master at wine / wine
Commits: bb850137 by Rémi Bernon at 2025-04-09T22:49:42+02:00 explorer: Paint the desktop even without RDW_ERASE.
- - - - - 81a24edc by Rémi Bernon at 2025-04-09T22:49:42+02:00 winex11: Avoid setting RDW_ERASE on expose events.
The Medium launcher uses a dialog window procedure, and implements its background by doing a StretchBlt call on WM_PAINT in the dialog procedure call, which happens before the window message loop
It then itself calls InvalidateRect(hwnd, NULL, 0), which queues a WM_PAINT as well but with only the RDW_INVALIDATE flag.
Next, when the window message loop is executed, the WM_PAINT message is being processed as it should, but as we've invalidated the window with RDW_ERASE from the expose event, the WM_NCPAINT handler erases the entire window, clearing the pixels that the launcher has just painted.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57665
- - - - -
2 changed files:
- dlls/winex11.drv/event.c - programs/explorer/desktop.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/6b7963037f935f7fc20e2278e1916e...