user32: Don't invalidate ComboBox on CB_SETCURSEL message. Signed-off-by: Piotr Caban <piotr@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
diff --git a/dlls/user32/combo.c b/dlls/user32/combo.c index ee9ce0a..149a495 100644 --- a/dlls/user32/combo.c +++ b/dlls/user32/combo.c
@@ -2142,10 +2142,7 @@ SendMessageW(lphc->hWndLBox, LB_SETTOPINDEX, wParam, 0); /* no LBN_SELCHANGE in this case, update manually */ - if( lphc->wState & CBF_EDIT ) - CBUpdateEdit( lphc, (INT)wParam ); - else - InvalidateRect(lphc->self, &lphc->textRect, TRUE); + CBPaintText( lphc, NULL ); lphc->wState &= ~CBF_SELCHANGE; return lParam; case CB_GETLBTEXT:
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c index 1d34fd2..1b4f6fa 100644 --- a/dlls/user32/tests/msg.c +++ b/dlls/user32/tests/msg.c
@@ -6937,7 +6937,7 @@ log_all_parent_messages++; SendMessageA(combo, CB_SETCURSEL, 0, 0); log_all_parent_messages--; - ok_sequence(SetCurSelComboSeq, "CB_SETCURSEL on a ComboBox", TRUE); + ok_sequence(SetCurSelComboSeq, "CB_SETCURSEL on a ComboBox", FALSE); DestroyWindow(combo); DestroyWindow(parent);