ChangeLog: * controls/menu.c Disabling catching of mouse move events when not over menu. Changing MENU_SelectItem allow EndMenu to deselect the selected menu.
Index: controls/menu.c =================================================================== RCS file: /home/wine/wine/controls/menu.c,v retrieving revision 1.139 diff -u -u -r1.139 menu.c --- controls/menu.c 2 Apr 2002 02:36:44 -0000 1.139 +++ controls/menu.c 3 May 2002 23:07:28 -0000 @@ -1665,6 +1665,7 @@ if (lppop->FocusedItem == wIndex) return; if (lppop->wFlags & MF_POPUP) hdc = GetDC( lppop->hWnd ); else hdc = GetDCEx( lppop->hWnd, 0, DCX_CACHE | DCX_WINDOW); + if (!top_popup) top_popup = lppop->hWnd; SelectObject( hdc, hMenuFont); @@ -2788,9 +2789,9 @@ /* In win95 winelook, the selected menu item must be changed every time the mouse moves. In Win31 winelook, the mouse button has to be held down */ - if ( (TWEAK_WineLook > WIN31_LOOK) || + if ( hmenu && ((TWEAK_WineLook > WIN31_LOOK) || ( (msg.wParam & MK_LBUTTON) || - ((wFlags & TPM_RIGHTBUTTON) && (msg.wParam & MK_RBUTTON))) ) + ((wFlags & TPM_RIGHTBUTTON) && (msg.wParam & MK_RBUTTON)))) ) fEndMenu |= !MENU_MouseMove( &mt, hmenu, wFlags );