diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java index fef5f3623ad..58071702261 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java @@ -3428,8 +3428,15 @@ int gtk_gesture_press_event (long gesture, int n_press, double x, double y, long } } } - } else if (n_press == 2) { + } else if (n_press >= 2) { boolean cancelled = sendMouseEvent(SWT.MouseDoubleClick, eventButton, n_press, 0, false, eventTime, x, y, false, eventState); + + //Issue 344, DoubleClick event currently unsupported below sendMouseEvent(). Until DoubleClickSupport is + //added this will catch failed events and try MouseDown instead. + if (cancelled) { + cancelled = sendMouseEvent(SWT.MouseDown, eventButton, n_press, 0, false, eventTime, x, y, false, eventState); + } + if (!cancelled) { result = GTK4.GTK_EVENT_SEQUENCE_CLAIMED; }