From d6f9fd91212014bb1fc757ddf883b7d91c78f198 Mon Sep 17 00:00:00 2001 From: James Tabor Date: Thu, 10 Sep 2015 14:27:14 +0000 Subject: [PATCH] [Win32k] - Trap out right button double clicks. See CORE-6754. svn path=/trunk/; revision=69172 --- reactos/win32ss/user/ntuser/menu.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/reactos/win32ss/user/ntuser/menu.c b/reactos/win32ss/user/ntuser/menu.c index d672ef39c19..edde6ff867c 100644 --- a/reactos/win32ss/user/ntuser/menu.c +++ b/reactos/win32ss/user/ntuser/menu.c @@ -3929,7 +3929,11 @@ static INT FASTCALL MENU_TrackMenu(PMENU pmenu, UINT wFlags, INT x, INT y, case WM_RBUTTONDBLCLK: 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 */ case WM_LBUTTONDBLCLK: case WM_LBUTTONDOWN: @@ -3937,7 +3941,8 @@ static INT FASTCALL MENU_TrackMenu(PMENU pmenu, UINT wFlags, INT x, INT y, /* Else, end menu tracking */ fRemove = MENU_ButtonDown(&mt, pmMouse, wFlags); 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; case WM_RBUTTONUP: -- 2.17.1