diff os2/dw.c @ 93:98cce029a611

Changed handling of menu item click events.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Thu, 25 Apr 2002 02:10:49 +0000
parents eeb98f881663
children 7c3eef54c98c
line wrap: on
line diff
--- a/os2/dw.c	Mon Apr 22 08:41:47 2002 +0000
+++ b/os2/dw.c	Thu Apr 25 02:10:49 2002 +0000
@@ -45,7 +45,7 @@
 HWND hwndBubble = NULLHANDLE, hwndBubbleLast = NULLHANDLE;
 PRECORDCORE pCore = NULL;
 ULONG aulBuffer[4];
-HWND lasthcnr = 0, lastitem = 0;
+HWND lasthcnr = 0, lastitem = 0, popup = 0;
 
 #define IS_WARP4() (aulBuffer[0] == 20 && aulBuffer[1] >= 40)
 
@@ -1775,7 +1775,7 @@
 
 					if(tmp->window < 65536 && command == tmp->window)
 					{
-						result = clickfunc(tmp->window, tmp->data);
+						result = clickfunc(popup ?  popup : tmp->window, tmp->data);
 						tmp = NULL;
 					}
 				}
@@ -3628,6 +3628,7 @@
 {
 	if(menu && *menu)
 	{
+		popup = parent;
 		WinPopupMenu(HWND_DESKTOP, parent, (*menu)->menu, x, dw_screen_height() - y, 0, PU_KEYBOARD | PU_MOUSEBUTTON1 | PU_VCONSTRAIN | PU_HCONSTRAIN);
 		free(*menu);
 		*menu = NULL;