gpointer user_data)
{
ModestMailOperation *mail_op = NULL;
+ GtkTreeModel *model = NULL;
mail_op = modest_mail_operation_new (MODEST_MAIL_OPERATION_TYPE_DELETE, G_OBJECT(win));
modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (),
/* Always delete. TODO: Move to trash still not supported */
modest_mail_operation_remove_msg (mail_op, header, FALSE);
g_object_unref (G_OBJECT (mail_op));
+
+ /* refilter treemodel to hide marked-as-deleted rows */
+ if (MODEST_IS_HEADER_VIEW (user_data)) {
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW (user_data));
+ gtk_tree_model_filter_refilter (GTK_TREE_MODEL_FILTER (model));
+ }
}
void
GtkWidget *header_view;
g_return_if_fail (MODEST_IS_WINDOW(win));
-
+ header_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW (win),
+ MODEST_WIDGET_TYPE_HEADER_VIEW);
+
/* Check first if the header view has the focus */
if (MODEST_IS_MAIN_WINDOW (win)) {
- header_view = modest_main_window_get_child_widget (MODEST_MAIN_WINDOW (win),
- MODEST_WIDGET_TYPE_HEADER_VIEW);
if (!gtk_widget_is_focus (header_view))
return;
}
-
+
header_list = get_selected_headers (win);
if (!header_list) return;
}
/* Remove each header */
- do_headers_action (win, headers_action_delete, NULL);
+ do_headers_action (win, headers_action_delete, header_view);
if (MODEST_IS_MSG_VIEW_WINDOW (win)) {
gtk_widget_destroy (GTK_WIDGET(win));
/* Open each cached message */
if (tny_list_get_length (not_opened_cached_headers) > 0) {
- mail_op2 = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_OPEN,
+ mail_op2 = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_RECEIVE,
G_OBJECT (win),
modest_ui_actions_get_msgs_full_error_handler,
NULL);
g_object_unref (G_OBJECT (account));
/* g_object_unref (msg); */
g_object_unref (header);
+ free_reply_forward_helper (rf_helper);
}
/*
} else
reply_forward_cb (NULL, header, msg, rf_helper);
} else {
+ TnyHeader *header;
+ TnyIterator *iter;
+
/* Retrieve messages */
mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_RECEIVE,
G_OBJECT(win),
modest_ui_actions_get_msgs_full_error_handler,
NULL);
modest_mail_operation_queue_add (modest_runtime_get_mail_operation_queue (), mail_op);
- modest_mail_operation_get_msgs_full (mail_op,
- header_list,
- reply_forward_cb,
- rf_helper,
- free_reply_forward_helper);
+
+ /* Only reply/forward to one message */
+ iter = tny_list_create_iterator (header_list);
+ header = TNY_HEADER (tny_iterator_get_current (iter));
+ g_object_unref (iter);
+
+ modest_mail_operation_get_msg (mail_op,
+ header,
+ reply_forward_cb,
+ rf_helper);
+
+/* modest_mail_operation_get_msgs_full (mail_op, */
+/* header_list, */
+/* reply_forward_cb, */
+/* rf_helper, */
+/* free_reply_forward_helper); */
/* Clean */
g_object_unref(mail_op);
/* Set send/receive operation in progress */
modest_main_window_notify_send_receive_initied (MODEST_MAIN_WINDOW(win));
-/* mail_op = modest_mail_operation_new (MODEST_MAIL_OPERATION_TYPE_RECEIVE, G_OBJECT(win)); */
- mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_OPEN,
+ mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_RECEIVE,
G_OBJECT (win),
modest_ui_actions_send_receive_error_handler,
NULL);
gpointer user_data)
{
GObject *win = modest_mail_operation_get_source (mail_op);
-
- /* TODO: what should we do in case of this error ? */
- g_warning ("Invalid folder name");
-
+ const GError *error = NULL;
+ const gchar *message = NULL;
+
+ /* Get error message */
+ error = modest_mail_operation_get_error (mail_op);
+ if (error != NULL && error->message != NULL) {
+ message = error->message;
+ } else {
+ message = _("!!! FIXME: Unable to rename");
+ }
+
+ /* Show notification dialog */
+ modest_platform_run_information_dialog ((win) ? GTK_WINDOW (win) : NULL, message);
g_object_unref (win);
}
if (MODEST_IS_MSG_EDIT_WINDOW (window)) {
modest_msg_edit_window_undo (MODEST_MSG_EDIT_WINDOW (window));
- } if (MODEST_IS_MAIN_WINDOW (window)) {
+ } else if (MODEST_IS_MAIN_WINDOW (window)) {
/* Clear clipboard source */
clipboard = modest_runtime_get_email_clipboard ();
modest_email_clipboard_clear (clipboard);
g_printerr ("modest: unkonw error on sedn&receive operation");
/* Show error message */
- modest_platform_run_information_dialog ((win) ? GTK_WINDOW (win) : NULL,
- _CS("sfil_ib_unable_to_send"));
-/* g_object_unref (win); */
+ if (modest_mail_operation_get_id (mail_op) == MODEST_MAIL_OPERATION_TYPE_RECEIVE)
+ modest_platform_run_information_dialog ((win) ? GTK_WINDOW (win) : NULL,
+ _CS("sfil_ib_unable_to_receive"));
+ else
+ modest_platform_run_information_dialog ((win) ? GTK_WINDOW (win) : NULL,
+ _CS("sfil_ib_unable_to_send"));
+ g_object_unref (win);
}
static void
} else {
ModestMailOperation *mail_op = NULL;
modest_window_mgr_register_header (modest_runtime_get_window_mgr (), header);
- mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_OPEN,
+ mail_op = modest_mail_operation_new_with_error_handling (MODEST_MAIL_OPERATION_TYPE_RECEIVE,
G_OBJECT (win),
modest_ui_actions_get_msgs_full_error_handler,
NULL);