Index: panel/add-control-dialog.c =================================================================== RCS file: /var/cvs/xfce/xfce4/xfce4-panel/panel/add-control-dialog.c,v retrieving revision 1.2 diff -u -r1.2 add-control-dialog.c --- panel/add-control-dialog.c 1 May 2004 14:10:24 -0000 1.2 +++ panel/add-control-dialog.c 17 Jun 2004 20:56:44 -0000 @@ -46,6 +46,7 @@ /* prototypes */ static void dialog_response (GtkWidget *dlg, int response, ControlList *list); +static gboolean tv_dblclick (GtkWidget *tv, GdkEventButton *evt, ControlList *list); static void dialog_destroyed (ControlList * list); static void add_spacer (GtkBox * box, int size); static void add_header (GtkBox * box); @@ -128,6 +129,23 @@ the_dialog = NULL; } +static gboolean +tv_dblclick (GtkWidget *tv, GdkEventButton *evt, ControlList *list) +{ + GtkWidget *dlg; + + if (evt->type == GDK_2BUTTON_PRESS) + { + dlg = gtk_widget_get_toplevel (tv); + if (dlg && GTK_WIDGET_TOPLEVEL (dlg)) + { + dialog_response (dlg, GTK_RESPONSE_OK, list); + } + } + + return FALSE; +} + static void dialog_destroyed (ControlList * list) { @@ -307,10 +325,9 @@ gtk_tree_path_free (path); g_signal_connect (tv, "cursor_changed", G_CALLBACK (cursor_changed), list); + g_signal_connect (tv, "button-press-event", G_CALLBACK (tv_dblclick), list); gtk_widget_set_size_request (tv, 300, 300); return list; } - -