X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fmodest-ui-actions.c;h=93a69dbf1dd4180aeaefa584d98adee579e7e3d4;hb=369c28b6d5a6f27d68e1c48558dd944dc04644aa;hp=8bae8dfe4aa31872babfb6c7dfe69e3aec7f8043;hpb=3f21c213ccf17f4399d2dde0e2c8359ab20f1596;p=modest diff --git a/src/modest-ui-actions.c b/src/modest-ui-actions.c index 8bae8df..93a69db 100644 --- a/src/modest-ui-actions.c +++ b/src/modest-ui-actions.c @@ -738,9 +738,9 @@ modest_ui_actions_compose_msg(ModestWindow *win, signature = modest_account_mgr_get_signature (mgr, account_name, &use_signature); if (body_str != NULL) { - body = use_signature ? g_strconcat(body_str, "\n", signature, NULL) : g_strdup(body_str); + body = use_signature ? g_strconcat(body_str, "\n--\n", signature, NULL) : g_strdup(body_str); } else { - body = use_signature ? g_strconcat("\n", signature, NULL) : g_strdup(""); + body = use_signature ? g_strconcat("\n--\n", signature, NULL) : g_strdup(""); } msg = modest_tny_msg_new (to_str, from_str, cc_str, bcc_str, subject_str, body, NULL, NULL, NULL); @@ -754,11 +754,15 @@ modest_ui_actions_compose_msg(ModestWindow *win, total_size = 0; allowed_size = MODEST_MAX_ATTACHMENT_SIZE; msg_win = modest_msg_edit_window_new (msg, account_name, FALSE); + + modest_window_mgr_register_window (modest_runtime_get_window_mgr(), msg_win); + modest_msg_edit_window_set_modified (MODEST_MSG_EDIT_WINDOW (msg_win), set_as_modified); + gtk_widget_show_all (GTK_WIDGET (msg_win)); + while (attachments) { total_size += - modest_msg_edit_window_attach_file_one( - (ModestMsgEditWindow *)msg_win, - attachments->data, allowed_size); + modest_msg_edit_window_attach_file_one((ModestMsgEditWindow *)msg_win, + attachments->data, allowed_size); if (total_size > allowed_size) { g_warning ("%s: total size: %u", @@ -769,10 +773,6 @@ modest_ui_actions_compose_msg(ModestWindow *win, attachments = g_slist_next(attachments); } - modest_window_mgr_register_window (modest_runtime_get_window_mgr(), msg_win); - modest_msg_edit_window_set_modified (MODEST_MSG_EDIT_WINDOW (msg_win), set_as_modified); - - gtk_widget_show_all (GTK_WIDGET (msg_win)); cleanup: g_free (from_str); @@ -2402,7 +2402,6 @@ modest_ui_actions_on_folder_selection_changed (ModestFolderView *folder_view, if (TNY_IS_FOLDER (folder_store) && selected) { TnyAccount *account; const gchar *account_name = NULL; - gboolean refresh; /* Update the active account */ account = modest_tny_folder_get_account (TNY_FOLDER (folder_store)); @@ -2420,8 +2419,6 @@ modest_ui_actions_on_folder_selection_changed (ModestFolderView *folder_view, modest_main_window_set_contents_style (main_window, MODEST_MAIN_WINDOW_CONTENTS_STYLE_HEADERS); - refresh = !modest_account_mgr_account_is_busy (modest_runtime_get_account_mgr (), account_name); - /* Set folder on header view. This function will call tny_folder_refresh_async so we pass a callback that will be called when @@ -2429,7 +2426,7 @@ modest_ui_actions_on_folder_selection_changed (ModestFolderView *folder_view, empty view if there are no messages */ modest_header_view_set_folder (MODEST_HEADER_VIEW(header_view), TNY_FOLDER (folder_store), - refresh, + TRUE, folder_refreshed_cb, main_window); @@ -3293,7 +3290,7 @@ on_rename_folder_performer (gboolean canceled, /* Clear the headers view */ sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view)); - gtk_tree_selection_unselect_all (sel); + gtk_tree_selection_unselect_all (sel); /* Actually rename the folder */ modest_mail_operation_rename_folder (mail_op, @@ -3301,6 +3298,7 @@ on_rename_folder_performer (gboolean canceled, (const gchar *) (data->new_name), on_rename_folder_cb, folder_view); + g_object_unref (data->folder); g_object_unref (mail_op); } @@ -3352,7 +3350,7 @@ modest_ui_actions_on_rename_folder (GtkAction *action, do_rename = FALSE; } else { RenameFolderInfo *rename_folder_data = g_new0 (RenameFolderInfo, 1); - rename_folder_data->folder = folder; + rename_folder_data->folder = g_object_ref (folder); rename_folder_data->new_name = folder_name; modest_platform_connect_if_remote_and_perform (GTK_WINDOW(main_window), TRUE, folder, on_rename_folder_performer, rename_folder_data); @@ -4230,11 +4228,12 @@ headers_action_show_details (TnyHeader *header, dialog = modest_details_dialog_new_with_header (GTK_WINDOW (window), header); /* Run dialog */ - gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); + modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), GTK_WINDOW (dialog)); gtk_widget_show_all (dialog); - gtk_dialog_run (GTK_DIALOG (dialog)); - gtk_widget_destroy (dialog); + g_signal_connect_swapped (dialog, "response", + G_CALLBACK (gtk_widget_destroy), + dialog); } /* @@ -5387,6 +5386,10 @@ modest_ui_actions_transfer_messages_helper (GtkWindow *win, gboolean need_connection = TRUE; gboolean do_xfer = TRUE; XferMsgsHelper *helper; + + g_return_if_fail (TNY_IS_FOLDER (src_folder)); + g_return_if_fail (TNY_IS_FOLDER (dst_folder)); + g_return_if_fail (TNY_IS_LIST (headers)); modest_ui_actions_xfer_messages_check (win, TNY_FOLDER_STORE (src_folder), headers, TNY_FOLDER (dst_folder), @@ -5445,6 +5448,7 @@ modest_ui_actions_on_msg_view_window_move_to (GtkAction *action, TNY_FOLDER (dst_folder)); /* Frees */ + g_object_unref (src_folder); g_object_unref (header); g_object_unref (headers); } @@ -5479,7 +5483,7 @@ modest_ui_actions_on_move_to (GtkAction *action, /* Create and run the dialog */ dialog = create_move_to_dialog (GTK_WINDOW (win), folder_view, &tree_view); modest_folder_view_select_first_inbox_or_local (MODEST_FOLDER_VIEW (tree_view)); - gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); + modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), GTK_WINDOW (dialog)); result = gtk_dialog_run (GTK_DIALOG(dialog)); g_object_ref (tree_view); gtk_widget_destroy (dialog); @@ -6025,6 +6029,8 @@ modest_ui_actions_on_send_queue_status_changed (ModestTnySendQueue *send_queue, /* Rerun dimming rules, because the message could become deletable for example */ modest_window_check_dimming_rules_group (MODEST_WINDOW (main_window), MODEST_DIMMING_RULES_TOOLBAR); + modest_window_check_dimming_rules_group (MODEST_WINDOW (main_window), + MODEST_DIMMING_RULES_MENU); /* Free */ frees: