- Trap out right button double clicks. See CORE-6754.

svn path=/trunk/; revision=69172
This commit is contained in:
James Tabor 2015-09-10 14:27:14 +00:00
parent c02c39bb4e
commit d6f9fd9121

View file

@ -3929,7 +3929,11 @@ static INT FASTCALL MENU_TrackMenu(PMENU pmenu, UINT wFlags, INT x, INT y,
case WM_RBUTTONDBLCLK: case WM_RBUTTONDBLCLK:
case WM_RBUTTONDOWN: case WM_RBUTTONDOWN:
if (!(wFlags & TPM_RIGHTBUTTON)) break; if (!(wFlags & TPM_RIGHTBUTTON))
{
if ( msg.message == WM_RBUTTONDBLCLK ) fInsideMenuLoop = FALSE; // Must exit or loop forever!
break;
}
/* fall through */ /* fall through */
case WM_LBUTTONDBLCLK: case WM_LBUTTONDBLCLK:
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
@ -3937,7 +3941,8 @@ static INT FASTCALL MENU_TrackMenu(PMENU pmenu, UINT wFlags, INT x, INT y,
/* Else, end menu tracking */ /* Else, end menu tracking */
fRemove = MENU_ButtonDown(&mt, pmMouse, wFlags); fRemove = MENU_ButtonDown(&mt, pmMouse, wFlags);
fInsideMenuLoop = fRemove; fInsideMenuLoop = fRemove;
if (msg.message == WM_LBUTTONDBLCLK) fInsideMenuLoop = FALSE; // Must exit or loop forever! if ( msg.message == WM_LBUTTONDBLCLK ||
msg.message == WM_RBUTTONDBLCLK ) fInsideMenuLoop = FALSE; // Must exit or loop forever!
break; break;
case WM_RBUTTONUP: case WM_RBUTTONUP: