user32: ImmProcessKey is only called on WM_KEYDOWN and if the message is being removed.

This commit is contained in:
Aric Stewart 2013-03-27 14:42:43 -05:00 committed by Alexandre Julliard
parent b4b99697f9
commit 6e4cbd5787

View file

@ -2453,8 +2453,8 @@ static BOOL process_keyboard_message( MSG *msg, UINT hw_id, HWND hwnd_filter,
}
accept_hardware_message( hw_id, remove, 0 );
if ( msg->message == WM_KEYDOWN || msg->message == WM_KEYUP )
if ( ImmProcessKey(msg->hwnd, GetKeyboardLayout(0), msg->wParam, msg->lParam, 0) )
if ( remove && msg->message == WM_KEYDOWN )
if (ImmProcessKey(msg->hwnd, GetKeyboardLayout(0), msg->wParam, msg->lParam, 0) )
msg->wParam = VK_PROCESSKEY;
return TRUE;