window_list = modest_window_mgr_get_window_list (mgr);
if (window_list == NULL) {
win = MODEST_WINDOW (modest_accounts_window_new ());
- modest_window_mgr_register_window (mgr, win, NULL);
- gtk_widget_show_all (GTK_WIDGET (win));
+ if (modest_window_mgr_register_window (mgr, win, NULL))
+ gtk_widget_show_all (GTK_WIDGET (win));
+ else
+ gtk_widget_destroy (GTK_WIDGET (win));
win = MODEST_WINDOW (modest_folder_window_new (NULL));
- modest_window_mgr_register_window (mgr, win, NULL);
-
- gtk_widget_show_all (GTK_WIDGET (win));
+ if (modest_window_mgr_register_window (mgr, win, NULL))
+ gtk_widget_show_all (GTK_WIDGET (win));
+ else
+ gtk_widget_destroy (GTK_WIDGET (win));
} else {
g_list_free (window_list);
}
proto = modest_tny_account_get_protocol_type (account);
protocol = modest_protocol_registry_get_protocol_by_type (modest_runtime_get_protocol_registry (), proto);
if (protocol)
- format = modest_protocol_get_translation (protocol, MODEST_PROTOCOL_TRANSLATION_MSG_NOT_AVAILABLE);
+ format = modest_protocol_get_translation (protocol, MODEST_PROTOCOL_TRANSLATION_MSG_NOT_AVAILABLE, subject);
g_object_unref (account);
}
else if (err->code == TNY_SYSTEM_ERROR_MEMORY)
/* If the account was created in memory full
conditions then tinymail won't be able to
- connect so it'll return this error code */
+ connect so it'll return this error code */
modest_platform_information_banner (parent_window,
NULL, _("emev_ui_imap_inbox_select_error"));
else
message is opened for example */
message = _("emev_ni_internal_error");
} else {
- message = _CS("ckdg_ib_unable_to_remove");
+ message = _CS("ckdg_ib_unable_to_rename");
}
/* We don't set a parent for the dialog because the dialog
check_memory_full_error ((GtkWidget *) parent_window, err);
} else {
- mail_op =
+ mail_op =
modest_mail_operation_new_with_error_handling (G_OBJECT(parent_window),
modest_ui_actions_rename_folder_error_handler,
parent_window, NULL);
folder_view = modest_main_window_get_child_widget (
MODEST_MAIN_WINDOW (parent_window),
MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW);
-
- /* Clear the headers view */
- sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view));
- gtk_tree_selection_unselect_all (sel);
- } else {
- folder_view = NULL;
+ }
+#ifdef MODEST_TOOLKIT_HILDON2
+ else if (MODEST_IS_FOLDER_WINDOW (parent_window)) {
+ ModestFolderWindow *folder_window = (ModestFolderWindow *) parent_window;
+ folder_view = GTK_WIDGET (modest_folder_window_get_folder_view (folder_window));
}
+#endif
+
+ /* Clear the folders view */
+ sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (folder_view));
+ gtk_tree_selection_unselect_all (sel);
/* Actually rename the folder */
modest_mail_operation_rename_folder (mail_op,
(const gchar *) (data->new_name),
on_rename_folder_cb,
folder_view);
- g_object_unref (data->folder);
g_object_unref (mail_op);
}
+ g_object_unref (data->folder);
g_free (data->new_name);
g_free (data);
}
* Used by modest_ui_actions_on_details to call do_headers_action
*/
static void
-headers_action_show_details (TnyHeader *header,
+headers_action_show_details (TnyHeader *header,
ModestWindow *window,
gpointer user_data)
/*
* Show the header details in a ModestDetailsDialog widget
*/
-void
-modest_ui_actions_on_details (GtkAction *action,
+void
+modest_ui_actions_on_details (GtkAction *action,
ModestWindow *win)
{
- TnyList * headers_list;
- TnyIterator *iter;
- TnyHeader *header;
-
if (MODEST_IS_MSG_VIEW_WINDOW (win)) {
TnyMsg *msg;
+ TnyHeader *header;
msg = modest_msg_view_window_get_message (MODEST_MSG_VIEW_WINDOW (win));
if (!msg)
return;
- g_object_unref (msg);
-
- headers_list = get_selected_headers (win);
- if (!headers_list)
- return;
-
- iter = tny_list_create_iterator (headers_list);
- header = TNY_HEADER (tny_iterator_get_current (iter));
+ header = tny_msg_get_header (msg);
if (header) {
headers_action_show_details (header, win, NULL);
g_object_unref (header);
}
-
- g_object_unref (iter);
- g_object_unref (headers_list);
+ g_object_unref (msg);
} else if (MODEST_IS_MAIN_WINDOW (win)) {
GtkWidget *folder_view, *header_view;
TnyFolderStore *dst_folder;
case MODEST_GTK_RESPONSE_NEW_FOLDER:
- modest_ui_actions_create_folder (GTK_WIDGET (parent_win), folder_view);
+ modest_ui_actions_create_folder (GTK_WIDGET (dialog), folder_view);
return;
case GTK_RESPONSE_NONE:
case GTK_RESPONSE_CANCEL:
* Checks if we need a connection to do the transfer and if the user
* wants to connect to complete it
*/
-void
+static void
modest_ui_actions_xfer_messages_check (GtkWindow *parent_window,
TnyFolderStore *src_folder,
TnyList *headers,
TnyAccount *src_account;
gint uncached_msgs = 0;
- uncached_msgs = header_list_count_uncached_msgs (headers);
-
/* We don't need any further check if
*
* 1- the source folder is local OR
* offline, it'll take place the next time we get a
* connection)
*/
+ uncached_msgs = header_list_count_uncached_msgs (headers);
src_account = get_account_from_folder_store (src_folder);
if (uncached_msgs > 0) {
guint num_headers;
if (remote_folder_has_leave_on_server (src_folder) && delete_originals) {
const gchar *account_name;
gboolean leave_on_server;
-
+
account_name = modest_tny_account_get_parent_modest_account_name_for_server_account (src_account);
leave_on_server = modest_account_mgr_get_leave_on_server (modest_runtime_get_account_mgr (),
account_name);
-
+
if (leave_on_server == TRUE) {
*need_connection = FALSE;
} else {
xfer_messages_error_handler (ModestMailOperation *mail_op,
gpointer user_data)
{
- GObject *win = modest_mail_operation_get_source (mail_op);
- modest_platform_run_information_dialog ((GtkWindow *) win,
- _("mail_in_ui_folder_move_target_error"),
- FALSE);
+ GObject *win;
+ const GError *error;
+
+ win = modest_mail_operation_get_source (mail_op);
+ error = modest_mail_operation_get_error (mail_op);
+
+ if (error && is_memory_full_error ((GError *) error))
+ modest_platform_information_banner ((GtkWidget *) win,
+ NULL, _KR("cerm_device_memory_full"));
+ else
+ modest_platform_run_information_dialog ((GtkWindow *) win,
+ _("mail_in_ui_folder_move_target_error"),
+ FALSE);
if (win)
g_object_unref (win);
}
main_window =
MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (modest_runtime_get_window_mgr (),
FALSE)); /* don't create */
-
- /* Get the folder view widget if exists */
- if (main_window)
- folder_view = modest_main_window_get_child_widget (main_window,
- MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW);
- else
- folder_view = NULL;
#endif
list_to_move = modest_platform_get_list_to_move (MODEST_WINDOW (win));