From: Jactry Zeng <jzeng(a)codeweavers.com> The current implementation doesn't work when we set the button with a size that is greater than the size of bitmap. --- dlls/comctl32/toolbar.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/comctl32/toolbar.c b/dlls/comctl32/toolbar.c index 02538eeb649..433df5d209b 100644 --- a/dlls/comctl32/toolbar.c +++ b/dlls/comctl32/toolbar.c @@ -967,7 +967,7 @@ TOOLBAR_DrawButton (const TOOLBAR_INFO *infoPtr, TBUTTON_INFO *btnPtr, HDC hdc, else rcBitmap.left += ((rc.right - rc.left) - infoPtr->nBitmapWidth) / 2; - rcBitmap.top += infoPtr->szPadding.cy / 2; + rcBitmap.top += ((rc.bottom - rc.top) - infoPtr->nBitmapHeight) / 2; TRACE("iBitmap=%d, start=(%ld,%ld) w=%d, h=%d\n", btnPtr->iBitmap, rcBitmap.left, rcBitmap.top, infoPtr->nBitmapWidth, infoPtr->nBitmapHeight); @@ -988,6 +988,7 @@ TOOLBAR_DrawButton (const TOOLBAR_INFO *infoPtr, TBUTTON_INFO *btnPtr, HDC hdc, rcText.top += infoPtr->szPadding.cy/2 + infoPtr->nBitmapHeight + 1; else rcText.top += infoPtr->szPadding.cy/2 + 2; + rcText.top += rcBitmap.top; } } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/2835