Index: button-widget.c
===================================================================
RCS file: /cvs/gnome/gnome-panel/gnome-panel/button-widget.c,v
retrieving revision 1.137
diff -u -p -r1.137 button-widget.c
--- button-widget.c	28 Sep 2004 08:33:24 -0000	1.137
+++ button-widget.c	29 Oct 2004 13:50:53 -0000
@@ -673,11 +673,24 @@ button_widget_activate (GtkButton *butto
 static gboolean
 button_widget_button_press (GtkWidget *widget, GdkEventButton *event)
 {
+	static prev_type = GDK_BUTTON_PRESS;
+
 	g_return_val_if_fail (BUTTON_IS_WIDGET (widget), FALSE);
 	g_return_val_if_fail (event != NULL, FALSE);
 
-	if (event->button == 1 && BUTTON_WIDGET (widget)->activatable)
+	if (event->button == 1 && BUTTON_WIDGET (widget)->activatable) {
+		/* Don't consider the release if it's a double (or triple,
+		 * or...) click: sometimes people think they need to double
+		 * click on a button to activate it... */
+		if (type == GDK_BUTTON_RELEASE
+		    && prev_type != GDK_BUTTON_PRESS) {
+			prev_type = type;
+			return TRUE;
+		}
+		prev_type = type;
+
 		return GTK_WIDGET_CLASS (parent_class)->button_press_event (widget, event);
+	}
 
 	return FALSE;
 }
