properly handle WM_UPDATEUISTATE Modified: trunk/reactos/lib/aclui/checklist.c _____
Modified: trunk/reactos/lib/aclui/checklist.c --- trunk/reactos/lib/aclui/checklist.c 2005-07-04 13:21:14 UTC (rev 16408) +++ trunk/reactos/lib/aclui/checklist.c 2005-07-04 13:37:02 UTC (rev 16409) @@ -1865,30 +1865,20 @@
case WM_UPDATEUISTATE: { - BOOL OldFocusVisible = infoPtr->FocusVisible; - - switch(LOWORD(wParam)) + if (HIWORD(wParam) & UISF_HIDEFOCUS) { - case UIS_CLEAR: + BOOL OldFocusVisible = infoPtr->FocusVisible; + + infoPtr->FocusVisible = (LOWORD(wParam) == UIS_CLEAR); + + if (infoPtr->FocusVisible != OldFocusVisible && + infoPtr->FocusedCheckItem != NULL) { - infoPtr->FocusVisible = (HIWORD(wParam) & UISF_HIDEFOCUS); - break; + UpdateCheckItemBox(infoPtr, + infoPtr->FocusedCheckItem, + infoPtr->FocusedCheckItemBox); } - case UIS_SET: - case UIS_INITIALIZE: - { - infoPtr->FocusVisible = !(HIWORD(wParam) & UISF_HIDEFOCUS); - break; - } } - - if (infoPtr->FocusVisible != OldFocusVisible && - infoPtr->FocusedCheckItem != NULL) - { - UpdateCheckItemBox(infoPtr, - infoPtr->FocusedCheckItem, - infoPtr->FocusedCheckItemBox); - } break; }