Module: wine Branch: master Commit: cd4d71e4a27e4b9b7d3717f7d2d764aaed5bff4c URL: http://source.winehq.org/git/wine.git/?a=commit;h=cd4d71e4a27e4b9b7d3717f7d2...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Jun 27 17:48:30 2013 +0200
user32: Fetch the window menu again after sending initialization messages.
---
dlls/user32/menu.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/user32/menu.c b/dlls/user32/menu.c index ae5cb36..f39ae7c 100644 --- a/dlls/user32/menu.c +++ b/dlls/user32/menu.c @@ -3356,6 +3356,9 @@ void MENU_TrackMouseMenuBar( HWND hWnd, INT ht, POINT pt ) if (IsMenu(hMenu)) { MENU_InitTracking( hWnd, hMenu, FALSE, wFlags ); + + /* fetch the window menu again, it may have changed */ + hMenu = (ht == HTSYSMENU) ? get_win_sys_menu( hWnd ) : GetMenu( hWnd ); MENU_TrackMenu( hMenu, wFlags, pt.x, pt.y, hWnd, NULL ); MENU_ExitTracking(hWnd, FALSE); } @@ -3396,6 +3399,9 @@ void MENU_TrackKbdMenuBar( HWND hwnd, UINT wParam, WCHAR wChar)
MENU_InitTracking( hwnd, hTrackMenu, FALSE, wFlags );
+ /* fetch the window menu again, it may have changed */ + hTrackMenu = (wParam & HTSYSMENU) ? get_win_sys_menu( hwnd ) : GetMenu( hwnd ); + if( wChar && wChar != ' ' ) { uItem = MENU_FindItemByKey( hwnd, hTrackMenu, wChar, (wParam & HTSYSMENU) );