priv = MODEST_MSG_VIEW_WINDOW_GET_PRIVATE (self);
GSList *recipients = NULL;
TnyMsg *msg = NULL;
- gboolean contacts_to_add = FALSE;
msg = tny_msg_view_get_msg (TNY_MSG_VIEW (priv->msg_view));
if (msg == NULL) {
g_object_unref (msg);
}
- if (recipients != NULL) {
- GtkWidget *picker_dialog;
- GtkWidget *selector;
- GSList *node;
- gchar *selected = NULL;
-
- selector = hildon_touch_selector_new_text ();
- g_object_ref (selector);
-
- for (node = recipients; node != NULL; node = g_slist_next (node)) {
- if (!modest_address_book_has_address ((const gchar *) node->data)) {
- hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector),
- (const gchar *) node->data);
- contacts_to_add = TRUE;
- }
- }
-
- if (contacts_to_add) {
- gint picker_result;
-
- picker_dialog = hildon_picker_dialog_new (GTK_WINDOW (self));
- gtk_window_set_title (GTK_WINDOW (picker_dialog), _("mcen_me_viewer_addtocontacts"));
-
- hildon_picker_dialog_set_selector (HILDON_PICKER_DIALOG (picker_dialog),
- HILDON_TOUCH_SELECTOR (selector));
-
- picker_result = gtk_dialog_run (GTK_DIALOG (picker_dialog));
-
- if (picker_result == GTK_RESPONSE_OK) {
- selected = hildon_touch_selector_get_current_text (HILDON_TOUCH_SELECTOR (selector));
- }
- gtk_widget_destroy (picker_dialog);
-
- if (selected)
- modest_address_book_add_address (selected, (GtkWindow *) self);
- g_free (selected);
-
- } else {
-
- g_object_unref (selector);
-
- }
+ if (recipients) {
+ /* Offer the user to add recipients to the address book */
+ modest_address_book_add_address_list_with_selector (recipients, (GtkWindow *) self);
+ g_slist_foreach (recipients, (GFunc) g_free, NULL); g_slist_free (recipients);
}
-
- if (recipients) {g_slist_foreach (recipients, (GFunc) g_free, NULL); g_slist_free (recipients);}
}
static gboolean