From 1dd9d2ef3715d97ab462d2aaf5cf20f675f55439 Mon Sep 17 00:00:00 2001 From: Joachim Henze Date: Mon, 14 Nov 2022 00:01:29 +0100 Subject: [PATCH] [NTUSER][USER32] Classic Theme: disabled "checked" checkboxes should be grey (#4874) Classic Theme: disabled "checked" checkboxes should be grey CORE-18609 and not black, like they erroneously were. This patch does not seem to have any impact on how they are rendered for themed ros. Ftr: We experimented also with COLOR_GRAYTEXT instead of COLOR_BTNSHADOW but that did result in incorrect drawing of disabled "checked" checkboxes for the 'High Contrast' Color Schemes. --- win32ss/user/ntuser/draw.c | 2 +- win32ss/user/user32/windows/draw.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/win32ss/user/ntuser/draw.c b/win32ss/user/ntuser/draw.c index 9e382b50290..7f3ec40d8f5 100644 --- a/win32ss/user/ntuser/draw.c +++ b/win32ss/user/ntuser/draw.c @@ -743,7 +743,7 @@ BOOL FASTCALL UITOOLS95_DFC_ButtonCheckRadio(HDC dc, LPRECT r, UINT uFlags, BOOL { WCHAR Check = (Radio) ? 'i' : 'b'; - IntGdiSetTextColor(dc, IntGetSysColor(COLOR_WINDOWTEXT)); + IntGdiSetTextColor(dc, IntGetSysColor((uFlags & DFCS_INACTIVE) ? COLOR_BTNSHADOW : COLOR_WINDOWTEXT)); GreTextOutW(dc, myr.left, myr.top, &Check, 1); } diff --git a/win32ss/user/user32/windows/draw.c b/win32ss/user/user32/windows/draw.c index 310f31493e5..7dffc787ac2 100644 --- a/win32ss/user/user32/windows/draw.c +++ b/win32ss/user/user32/windows/draw.c @@ -759,7 +759,7 @@ static BOOL UITOOLS95_DFC_ButtonCheckRadio(HDC dc, LPRECT r, UINT uFlags, BOOL R { TCHAR Check = (Radio) ? 'i' : 'b'; - SetTextColor(dc, GetSysColor(COLOR_WINDOWTEXT)); + SetTextColor(dc, GetSysColor((uFlags & DFCS_INACTIVE) ? COLOR_BTNSHADOW : COLOR_WINDOWTEXT)); TextOut(dc, X, Y, &Check, 1); } }