* src/widgets/modest-recpt-editor.c:
authorJose Dapena Paz <jdapena@igalia.com>
Wed, 12 Sep 2007 16:45:28 +0000 (16:45 +0000)
committerJose Dapena Paz <jdapena@igalia.com>
Wed, 12 Sep 2007 16:45:28 +0000 (16:45 +0000)
        * Now, if you click a resolved recipient that's already
          selected, selection is dropped and cursor moves to the end
          (fixes NB#64776).
* src/maemo/modest-address-book.c:
        * Now check names sets the valid addresses also as resolved
          addresses.

pmo-trunk-r3290

src/maemo/modest-address-book.c
src/widgets/modest-recpt-editor.c

index f6eca8a..9a08cd2 100644 (file)
@@ -728,7 +728,30 @@ modest_address_book_check_names (ModestRecptEditor *recpt_editor, gboolean updat
                                hildon_banner_show_information (NULL, NULL, _("mcen_ib_invalid_email"));
                                result = FALSE;
                        }
-               } 
+               } else {
+                       GSList *tags, *node;
+                       gboolean has_recipient = FALSE;
+
+                       tags = gtk_text_iter_get_tags (&start_iter);
+                       for (node = tags; node != NULL; node = g_slist_next (node)) {
+                               GtkTextTag *tag = GTK_TEXT_TAG (node->data);
+                               if (g_object_get_data (G_OBJECT (tag), "recipient-tag-id") != NULL) {
+                                       has_recipient = TRUE;
+                                       break;
+                               }
+                       }
+                       g_slist_free (tags);
+                       if (!has_recipient) {
+                               GSList * address_list = NULL;
+
+                               address_list = g_slist_prepend (address_list, address);
+                               modest_recpt_editor_replace_with_resolved_recipient (recpt_editor,
+                                                                                    &start_iter, &end_iter,
+                                                                                    address_list, 
+                                                                                    "");
+                               g_slist_free (address_list);
+                       }
+               }
 
                /* so, it seems a valid address */
                /* note: adding it the to the addressbook if it did not exist yet,
index 5e66325..fb54c7f 100644 (file)
@@ -435,7 +435,12 @@ modest_recpt_editor_on_button_release_event (GtkWidget *widget,
                        selection_changed = TRUE;
                }
 
-       gtk_text_buffer_select_range (buffer, &start, &end);
+       if (selection_changed) {
+               gtk_text_buffer_select_range (buffer, &start, &end);
+       } else {
+               GTK_TEXT_VIEW (priv->text_view)->pending_place_cursor_button = 0;
+               gtk_text_buffer_place_cursor (buffer, &end);
+       }
 
        return FALSE;
 }