Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/comctl32/combo.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/comctl32/combo.c b/dlls/comctl32/combo.c index 1fa5f5ef21..827da37c0c 100644 --- a/dlls/comctl32/combo.c +++ b/dlls/comctl32/combo.c @@ -545,10 +545,13 @@ static LRESULT COMBO_Create( HWND hwnd, LPHEADCOMBO lphc, HWND hwndParent, LONG * * Paint combo button (normal, pressed, and disabled states). */ -static void CBPaintButton( LPHEADCOMBO lphc, HDC hdc, RECT rectButton) +static void CBPaintButton(HEADCOMBO *lphc, HDC hdc) { UINT buttonState = DFCS_SCROLLCOMBOBOX;
+ if (IsRectEmpty(&lphc->buttonRect)) + return; + if( lphc->wState & CBF_NOREDRAW ) return;
@@ -559,7 +562,7 @@ static void CBPaintButton( LPHEADCOMBO lphc, HDC hdc, RECT rectButton) if (CB_DISABLED(lphc)) buttonState |= DFCS_INACTIVE;
- DrawFrameControl(hdc, &rectButton, DFC_SCROLL, buttonState); + DrawFrameControl(hdc, &lphc->buttonRect, DFC_SCROLL, buttonState); }
/*********************************************************************** @@ -815,8 +818,7 @@ static LRESULT COMBO_Paint(HEADCOMBO *lphc, HDC hdc) */ CBPaintBorder(lphc->self, lphc, hdc);
- if (!IsRectEmpty(&lphc->buttonRect)) - CBPaintButton(lphc, hdc, lphc->buttonRect); + CBPaintButton(lphc, hdc);
/* paint the edit control padding area */ if (CB_GETTYPE(lphc) != CBS_DROPDOWNLIST)