https://bugs.winehq.org/show_bug.cgi?id=52903
Bug ID: 52903 Summary: Resizing Dn-FamiTracker fails to redraw pattern editor and status bar Product: Wine Version: 7.7 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: nyanpasu64@tuta.io Distribution: ---
Created attachment 72288 --> https://bugs.winehq.org/attachment.cgi?id=72288 Dn-FamiTracker window not redrawn on Arch Linux Wine 7.7, after resizing with bottom-right corner
- Download Dn-FamiTracker (https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker/releases/do...) and extract Release/Dn-FamiTracker.exe. - Run the program on Wine 7.7 on Arch Linux kwin_x11 with compositing on. - Maximize and un-maximize it, or alternatively resize it.
The blue line in the program's bottom half should remain vertically centered. Instead after maximizing, I get two blue lines (one stale image in the top half of the window, and one redrawn blue line in the center). The stale image goes away when you click on the canvas or press an arrow key. And when unmaximizing, the blue line is below the center of the screen or off the bottom entirely. The line is redrawn at its correct position when you click on the canvas or press an arrow key.
Additionally, by slowly resizing the window's bottom-right corner, you can get the status bar to draw dozens of drag corners on top of each other, much like foobar2000.
This occurs on Wine 7.7 (Arch Linux) (resizing does not redraw the window), and to a lesser extent on macOS Wine (run https://cdn.discordapp.com/attachments/219258602450452486/963561317187326082... to workaround https://bugs.winehq.org/show_bug.cgi?id=49802) as well (resizing intermittently redraws the window). The bug also occurs on Bottles Caffe 7.2, but not 7.0 and below. On Bottles Caffe 7.0 and Bottles Vaniglia 6.x, when maximizing or restoring the window, I see a flicker of stale image, followed by a proper redraw. I don't know whether the Wine ≤7.0 behavior was correct (matching Windows), or an extra delayed redraw masking the missing redraw.
Unlike foobar2000, Dn-FamiTracker is open-source (though depends on MFC and is spaghetti code): https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker/tree/Dn0.4.... and https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker
The same error appears on Wine 7.7 and 7.2 but not 7.0, when testing 0CC-FamiTracker 0.3.15.3 (http://hertzdevil.info/programs/0CCft_v0315r3.7z). I've never seen either Dn-FamiTracker or 0CC-FamiTracker fail to redraw on real Windows 7 or 10.
This may be related to Bug 52515 (foobar2000), but I reported that bug on Wine 7.0 (which I think is immune to this bug). It may be the same bug anyway, but either my older report has the wrong version or Bottles Caffe 7.0 differs from Arch Wine. If I try running foobar2000's installer in Bottles to test old Wine versions, the installed foobar2000 program crashes on startup, so I can't test if it broke between Wine 7.0 and 7.2 as well.