OS.gtk_menu_popup (handle, 0, 0, address, 0, 0, display.popupTime);
OS.gtk_menu_popup (handle, 0, 0, address, 0, 0, display.getLastEventTime ());
public void _setVisible (boolean visible) {	if (visible == OS.GTK_WIDGET_MAPPED (handle)) return;	if (visible) {		sendEvent (SWT.Show);		if (getItemCount () != 0) {			int /*long*/ address = hasLocation ? display.menuPositionProc: 0;			/*			* Bug in GTK.  The timestamp passed into gtk_menu_popup is used			* to perform an X pointer grab.  It cannot be zero, else the grab			* will fail.  The fix is to use the timestamp of the last event			* processed.			*/			OS.gtk_menu_popup (handle, 0, 0, address, 0, 0, display.popupTime);		} else {			sendEvent (SWT.Hide);		}	} else {		OS.gtk_menu_popdown (handle);	}}