Re: [evolution-patches] Addressbook bug #60529



I came up with a better fix, and this time it's attached, too. Ignore
the ChangeLog changes.

--
Hans Petter
? 57795.patch
? 58921.patch
? 60529.patch
? 62085.patch
? birthdate.patch
? log.diff
? out.diff
? gui/component/ldap-config.gladep
? gui/component/old
? gui/component/out
? gui/component/select-names/crap
? gui/contact-editor/hpj-contact-editor.glade
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/ChangeLog,v
retrieving revision 1.1803
diff -u -p -r1.1803 ChangeLog
--- ChangeLog	2 Aug 2004 18:34:30 -0000	1.1803
+++ ChangeLog	3 Aug 2004 21:50:40 -0000
@@ -1,3 +1,21 @@
+2004-08-02  Hans Petter Jansson  <hpj ximian com>
+
+	Fixes #60529.
+
+	* gui/contact-list-editor/e-contact-list-editor.c
+	(list_drag_types): Support x-source-vcard target.
+	(table_drag_drop_cb): Use e_table_drag_get_data() instead of
+	gtk_drag_get_data().
+	(table_drag_data_received_cb): Support x-source-vcard target.
+
+2004-08-02  Hans Petter Jansson  <hpj ximian com>
+
+	Fixes #62085.
+
+	* gui/contact-list-editor/e-contact-list-editor.c
+	(e_contact_list_editor_class_init): Set the save_contact method.
+	(e_contact_list_editor_save_contact): Implement.
+
 2004-08-02  JP Rosevear  <jpr novell com>
 
 	* conduit/address-conduit.c (addrconduit_load_configuration): get
Index: gui/contact-list-editor/e-contact-list-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/contact-list-editor/e-contact-list-editor.c,v
retrieving revision 1.62
diff -u -p -r1.62 e-contact-list-editor.c
--- gui/contact-list-editor/e-contact-list-editor.c	14 Jul 2004 22:31:58 -0000	1.62
+++ gui/contact-list-editor/e-contact-list-editor.c	3 Aug 2004 21:50:40 -0000
@@ -882,14 +882,29 @@ table_drag_drop_cb (ETable *table, int r
 		    GdkDragContext *context,
 		    gint x, gint y, guint time, EContactListEditor *editor)
 {
-	if (context->targets == NULL)
-		return FALSE;
+	GList *p;
 
+	for (p = context->targets; p != NULL; p = p->next) {
+		char *possible_type;
 
-	gtk_drag_get_data (GTK_WIDGET (table), context,
-			   GDK_POINTER_TO_ATOM (context->targets->data),
-			   time);
-	return TRUE;
+		possible_type = gdk_atom_name (GDK_POINTER_TO_ATOM (p->data));
+		if (!strcmp (possible_type, VCARD_TYPE)) {
+			g_free (possible_type);
+			break;
+		}
+
+		g_free (possible_type);
+	}
+
+
+	if (p) {
+		gtk_drag_get_data (GTK_WIDGET (table), context,
+				   GDK_POINTER_TO_ATOM (p->data),
+				   time);
+		return TRUE;
+	}
+
+	return FALSE;
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]