From: Akihiro Sagawa Subject: user32: Don't close a popup menu when clicking a sub-menu parent item twice. Message-Id: <20140613211101.9C7B.375B48EC@gmail.com> Date: Fri, 13 Jun 2014 21:11:34 +0900 See https://bugs.winehq.org/show_bug.cgi?id=36436 for details. --- dlls/user32/menu.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dlls/user32/menu.c b/dlls/user32/menu.c index 0aa7744..93bee49 100644 --- a/dlls/user32/menu.c +++ b/dlls/user32/menu.c @@ -2617,13 +2617,14 @@ static INT MENU_ButtonUp( MTRACKER* pmt, HMENU hPtMenu, UINT wFlags) return executedMenuId; } - /* If we are dealing with the top-level menu */ + /* If we are dealing with the menu bar */ /* and this is a click on an already "popped" item: */ /* Stop the menu tracking and close the opened submenus */ if((pmt->hTopMenu == hPtMenu) && ptmenu->bTimeToHide) return 0; } - ptmenu->bTimeToHide = TRUE; + if( GetMenu(ptmenu->hWnd) == hPtMenu ) + ptmenu->bTimeToHide = TRUE; } return -1; }