user32: Handle ES_MULTILINE correctly for WM_KEYDOWN/VK_RETURN.

This commit is contained in:
Lei Zhang 2008-04-07 14:13:04 -07:00 committed by Alexandre Julliard
parent c8a4bb8fff
commit 7f10fe0744
2 changed files with 3 additions and 3 deletions

View File

@ -4596,7 +4596,7 @@ static LRESULT EDIT_WM_KeyDown(EDITSTATE *es, INT key)
break; break;
case VK_RETURN: case VK_RETURN:
/* If the edit doesn't want the return send a message to the default object */ /* If the edit doesn't want the return send a message to the default object */
if(!(es->style & ES_WANTRETURN)) if(!(es->style & ES_MULTILINE) || !(es->style & ES_WANTRETURN))
{ {
HWND hwndParent = GetParent(es->hwndSelf); HWND hwndParent = GetParent(es->hwndSelf);
DWORD dw = SendMessageW( hwndParent, DM_GETDEFID, 0, 0 ); DWORD dw = SendMessageW( hwndParent, DM_GETDEFID, 0, 0 );

View File

@ -1898,7 +1898,7 @@ static void test_singleline_wantreturn_edit_dialog(void)
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 0); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 0);
todo_wine ok(222 == r, "Expected %d, got %d\n", 222, r); todo_wine ok(222 == r, "Expected %d, got %d\n", 222, r);
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 1); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 1);
todo_wine ok(111 == r, "Expected %d, got %d\n", 111, r); ok(111 == r, "Expected %d, got %d\n", 111, r);
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 2); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 2);
ok(444 == r, "Expected %d, got %d\n", 444, r); ok(444 == r, "Expected %d, got %d\n", 444, r);
@ -1914,7 +1914,7 @@ static void test_singleline_wantreturn_edit_dialog(void)
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 6); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 6);
todo_wine ok(222 == r, "Expected %d, got %d\n", 222, r); todo_wine ok(222 == r, "Expected %d, got %d\n", 222, r);
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 7); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 7);
todo_wine ok(111 == r, "Expected %d, got %d\n", 111, r); ok(111 == r, "Expected %d, got %d\n", 111, r);
r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 8); r = DialogBoxParam(hinst, "EDIT_SINGLELINE_WANTRETURN_DIALOG", NULL, (DLGPROC)edit_singleline_dialog_proc, 8);
ok(444 == r, "Expected %d, got %d\n", 444, r); ok(444 == r, "Expected %d, got %d\n", 444, r);
} }