}
void
-modest_address_book_add_address (const gchar *address)
+modest_address_book_add_address (const gchar *address,
+ GtkWindow *parent)
{
OssoABookAccount *account = NULL;
GtkWidget *dialog = NULL;
}
email_address = modest_text_utils_get_email_address (address);
-
+
account = osso_abook_account_get (EVC_EMAIL, NULL, email_address);
g_free (email_address);
if (account)
{
dialog = osso_abook_add_to_contacts_dialog_new (contact_model, account);
g_object_unref (account);
+
+ modest_window_mgr_set_modal (modest_runtime_get_window_mgr(),
+ (GtkWindow *) parent,
+ (GtkWindow *) dialog);
+
gtk_dialog_run (GTK_DIALOG (dialog));
if (contact_model) {
/* so, it seems a valid address */
/* note: adding it the to the addressbook if it did not exist yet,
* and adding it to the recent_list */
- if (result && store_address)
- add_to_address_book (address);
+ if (result && address_list && store_address)
+ *address_list = g_slist_prepend (*address_list, address);
+ else
+ g_free (address);
- g_free (address);
if (result == FALSE)
break;
current_end = g_slist_next (current_end);
}
+ /* Remove dup's */
+ if (address_list && *address_list)
+ *address_list = modest_text_utils_remove_duplicate_addresses_list (*address_list);
+
if (current_start == NULL) {
gtk_text_buffer_get_end_iter (buffer, &end_iter);
gtk_text_buffer_place_cursor (buffer, &end_iter);