From 06d067e46c78301244f9ff7eeb3ef8d716b9bedc Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Wed, 9 Apr 2008 19:10:38 -0700 Subject: [PATCH] user32: handle VK_TAB in EDIT_WM_KeyDown. --- dlls/user32/dialog.c | 2 +- dlls/user32/edit.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/user32/dialog.c b/dlls/user32/dialog.c index 243bb5a..a9867c6 100644 --- a/dlls/user32/dialog.c +++ b/dlls/user32/dialog.c @@ -1094,7 +1094,7 @@ BOOL WINAPI IsDialogMessageW( HWND hwndDlg, LPMSG msg ) { case WM_KEYDOWN: dlgCode = SendMessageW( msg->hwnd, WM_GETDLGCODE, msg->wParam, (LPARAM)msg ); - if (dlgCode & (DLGC_WANTCHARS|DLGC_WANTMESSAGE)) break; + if (dlgCode & (DLGC_WANTMESSAGE)) break; switch(msg->wParam) { diff --git a/dlls/user32/edit.c b/dlls/user32/edit.c index 85de02e..b2bfe1c 100644 --- a/dlls/user32/edit.c +++ b/dlls/user32/edit.c @@ -814,9 +814,6 @@ static LRESULT WINAPI EditWndProc_common( HWND hwnd, UINT msg, case VK_ESCAPE: SendMessageW(GetParent(hwnd), WM_CLOSE, 0, 0); break; - case VK_TAB: - SendMessageW(GetParent(hwnd), WM_NEXTDLGCTL, (GetKeyState(VK_SHIFT) & 0x8000), 0); - break; default: break; } @@ -4639,6 +4636,9 @@ static LRESULT EDIT_WM_KeyDown(EDITSTATE *es, INT key) if (!(es->style & ES_MULTILINE)) SendMessageW(GetParent(es->hwndSelf), WM_COMMAND, IDCANCEL, (LPARAM)GetDlgItem( GetParent(es->hwndSelf), IDCANCEL ) ); break; + case VK_TAB: + SendMessageW(es->hwndParent, WM_NEXTDLGCTL, shift, 0); + break; } return 0; } -- 1.5.2.2