* Fix some detected memory leaks
[modest] / src / maemo / modest-msg-edit-window.c
index da30d63..45f2738 100644 (file)
@@ -241,7 +241,7 @@ static void
 save_settings (ModestMsgEditWindow *self)
 {
        modest_widget_memory_save (modest_runtime_get_conf(),
-                                  G_OBJECT(self), "modest-edit-msg-window");
+                                  G_OBJECT(self), MODEST_CONF_EDIT_WINDOW_KEY);
 }
 
 
@@ -249,7 +249,7 @@ static void
 restore_settings (ModestMsgEditWindow *self)
 {
        modest_widget_memory_restore (modest_runtime_get_conf(),
-                                     G_OBJECT(self), "modest-edit-msg-window");
+                                     G_OBJECT(self), MODEST_CONF_EDIT_WINDOW_KEY);
 }
 
 
@@ -262,7 +262,8 @@ get_transports (void)
        GSList *cursor, *accounts;
        
        account_mgr = modest_runtime_get_account_mgr();
-       cursor = accounts = modest_account_mgr_account_names (account_mgr); 
+       cursor = accounts = modest_account_mgr_account_names (account_mgr, 
+                                               TRUE /* only enabled accounts. */); 
        while (cursor) {
                gchar *account_name = (gchar*)cursor->data;
                gchar *from_string  = modest_account_mgr_get_from_string (account_mgr,
@@ -1636,6 +1637,7 @@ modest_msg_edit_window_show_toolbar (ModestWindow *self,
 {
        ModestWindowPrivate *parent_priv;
        
+       g_return_if_fail (MODEST_IS_MSG_VIEW_WINDOW (self));
        parent_priv = MODEST_WINDOW_GET_PRIVATE(self);
 
        /* FIXME: we can not just use the code of
@@ -2029,3 +2031,32 @@ is_modified (ModestMsgEditWindow *editor)
        return FALSE;
 }
 
+gboolean
+modest_msg_edit_window_check_names (ModestMsgEditWindow *window)
+{
+       ModestMsgEditWindowPrivate *priv = NULL;
+
+       g_return_val_if_fail (MODEST_IS_MSG_EDIT_WINDOW (window), FALSE);
+       priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (window);
+
+       /* check if there's no recipient added */
+       if ((gtk_text_buffer_get_char_count (modest_recpt_editor_get_buffer (MODEST_RECPT_EDITOR (priv->to_field))) == 0) &&
+           (gtk_text_buffer_get_char_count (modest_recpt_editor_get_buffer (MODEST_RECPT_EDITOR (priv->cc_field))) == 0) &&
+           (gtk_text_buffer_get_char_count (modest_recpt_editor_get_buffer (MODEST_RECPT_EDITOR (priv->bcc_field))) == 0)) {
+               /* no recipient contents, then select contacts */
+               modest_msg_edit_window_open_addressbook (window, NULL);
+               return FALSE;
+       }
+
+       if (!modest_address_book_check_names (MODEST_RECPT_EDITOR (priv->to_field)))
+               return FALSE;
+       if (!modest_address_book_check_names (MODEST_RECPT_EDITOR (priv->cc_field)))
+               return FALSE;
+       if (!modest_address_book_check_names (MODEST_RECPT_EDITOR (priv->bcc_field)))
+               return FALSE;
+
+       modest_recpt_editor_grab_focus (MODEST_RECPT_EDITOR (priv->to_field));
+
+       return TRUE;
+
+}