I'm using WDL's WndSize to scale the content of my windows, however on macOS with vanilla WDL it does not redraw properly after a sudden change of size:
It appears to be caused by this condition in swell-dlg.mm at line 1750, added in 2010:
Code:
if ([hc isOpaque]) InvalidateRect((HWND)hc,NULL,FALSE); \
isOpaque (m_isopaque) seems to be always false unless mac_resgen.php adds SWELL_DLG_WS_OPAQUE which it only does if there is absolutely nothing in the resource file between BEGIN and END... (?!)
After removing that condition it's not perfect, but much better (
patch I've been using):
I'm not sure if that fix is right because I have no idea what isOpaque is supposed to be for and it still takes some time before the controls get drawn at the correct position after a fast resize.
What is the intended usage of that test/isOpaque/SWELL_DLG_WS_OPAQUE? Is there a better way to fix the redraw problem of the first gif (there was a similar issue in REAPER
prior to v5.21)?