Ken Thomases : winemac: Send WM_CANCELMODE when keyboard layout changes from Cocoa side.
Module: wine Branch: stable Commit: 58f2168742191ed3fea4beeee0c5936fe3bfc634 URL: http://source.winehq.org/git/wine.git/?a=commit;h=58f2168742191ed3fea4beeee0... Author: Ken Thomases <ken(a)codeweavers.com> Date: Wed Oct 23 20:13:10 2013 -0500 winemac: Send WM_CANCELMODE when keyboard layout changes from Cocoa side. The standard keyboard shortcut for switching the keyboard layout is Command- Space, but the Mac driver never sees the Space key press. So, Wine only sees a press and release of Alt, which puts focus on the menu bar. This prevents that focus change. (cherry picked from commit 35f0cf26b0225f31d662c834d55997a7a4bf3c59) --- dlls/winemac.drv/keyboard.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dlls/winemac.drv/keyboard.c b/dlls/winemac.drv/keyboard.c index cc25789..206ee8d 100644 --- a/dlls/winemac.drv/keyboard.c +++ b/dlls/winemac.drv/keyboard.c @@ -843,6 +843,8 @@ void macdrv_keyboard_changed(const macdrv_event *event) thread_data->dead_key_state = 0; macdrv_compute_keyboard_layout(thread_data); + + SendMessageW(GetActiveWindow(), WM_CANCELMODE, 0, 0); }
participants (1)
-
Alexandre Julliard