From 07b7d752778dacc302ebba124949c9999033fe75 Mon Sep 17 00:00:00 2001 From: XakerTwo <13261533+XakerTwo@users.noreply.github.com> Date: Tue, 25 Feb 2025 22:34:44 +0300 Subject: [PATCH] fix black color lock when selected color is black next attempt to change it would be rejected zero is valid for CHOOSECOLOR because COLORREF is A,R,G,B, packed into Int32 additionally skip value updating if it's actually not changed --- src/main.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/main.c b/src/main.c index 561b8a95..7d1c6247 100644 --- a/src/main.c +++ b/src/main.c @@ -1170,16 +1170,13 @@ INT_PTR CALLBACK SettingsProc ( clr = (COLORREF)_r_listview_getitemlparam (hwnd, listview_id, lpnmlv->iItem); - if (!clr) - break; - cc.lStructSize = sizeof (CHOOSECOLOR); cc.Flags = CC_RGBINIT | CC_FULLOPEN; cc.hwndOwner = hwnd; cc.lpCustColors = cust; cc.rgbResult = clr; - if (ChooseColorW (&cc)) + if (ChooseColorW (&cc) && clr != cc.rgbResult) { if (lpnmlv->iItem == 0) {