https://bugs.winehq.org/show_bug.cgi?id=57521
--- Comment #11 from Zhiyi Zhang zzhang@codeweavers.com --- (In reply to Stefan Dösinger from comment #10)
Created attachment 77724 [details] Make uxtheme set the text color
However, on IRC you said
eh, UXTHEME_DefDlgProc() shouldn't touch text color though.
Why do you think it shouldn't touch the color? As far as I can see the equivalent code in default_window_proc in win32u/defwnd.c does set the text color (line 2339 in the current git code):
[00:18:41] <stefand> so winecfg does mess with WM_CTLCOLORSTATIC (I noticed that fairly early) [00:19:12] <stefand> changing the case IDC_ABT_PANEL_TEXT / IDC_ABT_LICENSE_TEXT etc to default: makes some more text blue, but not everything [00:19:50] <zhiyi> that's because winecfg is a dialog. See UXTHEME_DefDlgProc(). [00:20:06] <stefand> it seems that returning FALSE from DlgProc doesn't do what I intuitively expect it to do [00:22:32] <zhiyi> eh, UXTHEME_DefDlgProc() shouldn't touch text color though.
I was referring to "makes some more text blue, but not everything" is not from UXTHEME_DefDlgProc() because of no SetTextColor() call in UXTHEME_DefDlgProc(). Now that I think about this. UXTHEME_DefDlgProc() should probably change the text color as well. Your patch looks good at first glance. Please add some tests in test_EnableThemeDialogTexture() to verify it.