user32: Use COLOR_BTNFACE to fill scroll bar background.

Fix foobar2000 wrong scroll bar size box color when theming is on.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zhiyi Zhang 2022-02-10 14:57:04 +08:00 committed by Alexandre Julliard
parent 329abd8fb9
commit 0457376c0a
3 changed files with 4 additions and 4 deletions

View File

@ -1073,7 +1073,7 @@ static void NC_DoNCPaint( HWND hwnd, HRGN clip )
else
r.left = r.right - GetSystemMetrics(SM_CXVSCROLL) + 1;
r.top = r.bottom - GetSystemMetrics(SM_CYHSCROLL) + 1;
FillRect( hdc, &r, GetSysColorBrush(COLOR_SCROLLBAR) );
FillRect( hdc, &r, GetSysColorBrush( COLOR_BTNFACE ) );
}
ReleaseDC( hwnd, hdc );

View File

@ -585,7 +585,7 @@ void WINAPI USER_ScrollBarDraw( HWND hwnd, HDC hdc, INT nBar, enum SCROLL_HITTES
{
RECT rc = *rect;
FillRect( hdc, &rc, GetSysColorBrush( COLOR_SCROLLBAR ) );
FillRect( hdc, &rc, GetSysColorBrush( COLOR_BTNFACE ) );
rc.left = max( rc.left, rc.right - GetSystemMetrics( SM_CXVSCROLL ) - 1 );
rc.top = max( rc.top, rc.bottom - GetSystemMetrics( SM_CYHSCROLL ) - 1 );
DrawFrameControl( hdc, &rc, DFC_SCROLL, DFCS_SCROLLSIZEGRIP );
@ -594,7 +594,7 @@ void WINAPI USER_ScrollBarDraw( HWND hwnd, HDC hdc, INT nBar, enum SCROLL_HITTES
if (style & SBS_SIZEBOX)
{
FillRect( hdc, rect, GetSysColorBrush( COLOR_SCROLLBAR ) );
FillRect( hdc, rect, GetSysColorBrush( COLOR_BTNFACE ) );
return;
}
}

View File

@ -802,7 +802,7 @@ static void test_visual(void)
hdc = GetDC(hwnd);
color = GetPixel(hdc, 5, 5);
todo_wine_if(styles[i] == SBS_SIZEBOX || bThemeActive)
todo_wine_if(bThemeActive)
ok(color == colors[1], "Expected color %#x, got %#x.\n", colors[1], color);
ReleaseDC(hwnd, hdc);