From 24dc3de4c952b1205c637d0a165a04ae389ed0f2 Mon Sep 17 00:00:00 2001 From: Jason Edmeades Date: Wed, 1 Mar 2006 12:39:09 +0100 Subject: [PATCH] user32: Ensure VK_UP displays the popup menu for the selected item if the popup menu is not visible --- dlls/user/menu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/user/menu.c b/dlls/user/menu.c index a72e9222a32..e2c6318941f 100644 --- a/dlls/user/menu.c +++ b/dlls/user/menu.c @@ -3053,19 +3053,19 @@ static BOOL MENU_TrackMenu( HMENU hmenu, UINT wFlags, INT x, INT y, case VK_END: MENU_SelectItem( mt.hOwnerWnd, mt.hCurrentMenu, NO_SELECTED_ITEM, FALSE, 0 ); - /* fall through */ - case VK_UP: MENU_MoveSelection( mt.hOwnerWnd, mt.hCurrentMenu, (msg.wParam == VK_HOME)? ITEM_NEXT : ITEM_PREV ); break; + case VK_UP: case VK_DOWN: /* If on menu bar, pull-down the menu */ menu = MENU_GetMenu( mt.hCurrentMenu ); if (!(menu->wFlags & MF_POPUP)) mt.hCurrentMenu = MENU_ShowSubPopup(mt.hOwnerWnd, mt.hTopMenu, TRUE, wFlags); else /* otherwise try to move selection */ - MENU_MoveSelection( mt.hOwnerWnd, mt.hCurrentMenu, ITEM_NEXT ); + MENU_MoveSelection( mt.hOwnerWnd, mt.hCurrentMenu, + (msg.wParam == VK_UP)? ITEM_PREV : ITEM_NEXT ); break; case VK_LEFT: