Commit f3bcc0c4 authored by Clinton Stimpson's avatar Clinton Stimpson Committed by Alexandre Julliard

user32: WM_SETFONT on button doesn't repaint directly.

parent a0682176
......@@ -410,7 +410,7 @@ static LRESULT WINAPI ButtonWndProc_common(HWND hWnd, UINT uMsg,
case WM_SETFONT:
set_button_font( hWnd, (HFONT)wParam );
if (lParam) paint_button( hWnd, btn_type, ODA_DRAWENTIRE );
if (lParam) InvalidateRect(hWnd, NULL, TRUE);
break;
case WM_GETFONT:
......
......@@ -4229,6 +4229,14 @@ static const struct message WmLButtonUpSeq[] =
{ WM_CAPTURECHANGED, sent|wparam|defwinproc, 0 },
{ 0 }
};
static const struct message WmSetFontButtonSeq[] =
{
{ WM_SETFONT, sent },
{ WM_PAINT, sent },
{ WM_ERASEBKGND, sent|defwinproc },
{ WM_CTLCOLORBTN, sent|defwinproc },
{ 0 }
};
static WNDPROC old_button_proc;
......@@ -4309,6 +4317,7 @@ static void test_button_messages(void)
unsigned int i;
HWND hwnd;
DWORD dlg_code;
HFONT zfont;
subclass_button();
......@@ -4348,6 +4357,13 @@ static void test_button_messages(void)
SendMessageA(hwnd, WM_LBUTTONUP, 0, 0);
ok_sequence(WmLButtonUpSeq, "WM_LBUTTONUP on a button", FALSE);
flush_sequence();
zfont = (HFONT)GetStockObject(SYSTEM_FONT);
SendMessageA(hwnd, WM_SETFONT, (WPARAM)zfont, TRUE);
UpdateWindow(hwnd);
ok_sequence(WmSetFontButtonSeq, "WM_SETFONT on a button", FALSE);
DestroyWindow(hwnd);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment