wizard = GTK_WINDOW (modest_platform_get_account_settings_wizard ());
modest_window_mgr_set_modal (modest_runtime_get_window_mgr(), GTK_WINDOW (wizard), (GtkWindow *) win);
+#ifndef MODEST_TOOLKIT_HILDON2
/* always present a main window in the background
* we do it here, so we cannot end up with two wizards (as this
* function might be called in modest_window_mgr_get_main_window as well */
- if (!win)
+ if (!win)
win = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr(),
TRUE); /* create if not existent */
+#else
+ if (!win) {
+ GList *window_list;
+ ModestWindowMgr *mgr;
+
+ mgr = modest_runtime_get_window_mgr ();
+
+ 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));
+
+ win = MODEST_WINDOW (modest_folder_window_new (NULL));
+ modest_window_mgr_register_window (mgr, win, NULL);
+
+ gtk_widget_show_all (GTK_WIDGET (win));
+ } else {
+ g_list_free (window_list);
+ }
+ }
+#endif
- gtk_window_set_transient_for (GTK_WINDOW (wizard), GTK_WINDOW (win));
+ if (win)
+ gtk_window_set_transient_for (GTK_WINDOW (wizard), GTK_WINDOW (win));
/* make sure the mainwindow is visible. We need to present the
wizard again to give it the focus back. show_all are needed
if (error && ((error->code == TNY_SERVICE_ERROR_NO_SUCH_MESSAGE) ||
error->code == TNY_SERVICE_ERROR_MESSAGE_NOT_AVAILABLE)) {
- gchar *subject, *msg;
+ gchar *subject, *msg, *format = NULL;
+ TnyAccount *account;
subject = tny_header_dup_subject (header);
if (!subject)
- subject = g_strdup (_("mail_va_no_subject"));;
- msg = g_strdup_printf (_("emev_ni_ui_imap_message_not_available_in_server"),
- subject);
+ subject = g_strdup (_("mail_va_no_subject"));
+
+ account = modest_mail_operation_get_account (mail_op);
+ if (account) {
+ ModestProtocol *protocol;
+ ModestProtocolType proto;
+ 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);
+ g_object_unref (account);
+ }
+
+ if (!format)
+ format = g_strdup (_("emev_ni_ui_imap_message_not_available_in_server"));
+
+ msg = g_strdup_printf (format, subject);
modest_platform_run_information_dialog (NULL, msg, FALSE);
g_free (msg);
+ g_free (format);
g_free (subject);
}
outbox which is not in
failed state */
*can_open = FALSE;
- g_object_unref(traccount);
}
#endif
}
GtkWidget *header_view = NULL;
OpenMsgHelper *helper;
ModestWindow *window;
-
+
g_return_if_fail (header != NULL && rowref != NULL);
mgr = modest_runtime_get_window_mgr ();
window = NULL;
found = modest_window_mgr_find_registered_header (mgr, header, &window);
-
+
/* Do not open again the message and present the
window to the user */
if (found) {
TnyFolderStore *parent_folder;
#ifdef MODEST_TOOLKIT_HILDON2
- const gchar *active_account;
- TnyAccount *account;
ModestTnyAccountStore *acc_store;
- /* In hildon 2.2 we use the current account as default parent */
acc_store = modest_runtime_get_account_store ();
- active_account = modest_window_get_active_account (MODEST_WINDOW (parent_window));
- if (active_account) {
- account = modest_tny_account_store_get_server_account (acc_store,
- active_account,
- TNY_ACCOUNT_TYPE_STORE);
- parent_folder = TNY_FOLDER_STORE (account);
- } else {
- parent_folder = (TnyFolderStore *)
- modest_tny_account_store_get_local_folders_account (acc_store);
- }
+
+ parent_folder = (TnyFolderStore *)
+ modest_tny_account_store_get_local_folders_account (acc_store);
#else
parent_folder = modest_folder_view_get_selected (MODEST_FOLDER_VIEW(folder_view));
#endif
message is opened for example */
message = _("emev_ni_internal_error");
} else {
- message = _("emev_ib_ui_imap_unable_to_rename");
+ message = _CS("ckdg_ib_unable_to_remove");
}
/* We don't set a parent for the dialog because the dialog
!MODEST_IS_TNY_LOCAL_FOLDERS_ACCOUNT (dst_folder) &&
!modest_tny_account_is_memory_card_account (TNY_ACCOUNT (dst_folder))) {
do_xfer = FALSE;
+ /* Show an error */
+ modest_platform_run_information_dialog (win,
+ _("mail_in_ui_folder_move_target_error"),
+ FALSE);
} else if (!TNY_IS_FOLDER (src_folder)) {
g_warning ("%s: src_folder is not a TnyFolder.\n", __FUNCTION__);
do_xfer = FALSE;
if (do_xfer) {
MoveFolderInfo *info = g_new0 (MoveFolderInfo, 1);
DoubleConnectionInfo *connect_info = g_slice_new (DoubleConnectionInfo);
-
+
info->src_folder = g_object_ref (src_folder);
info->dst_folder = g_object_ref (dst_folder);
info->delete_original = TRUE;
TNY_FOLDER_STORE (src_folder),
connect_info);
}
+
/* Frees */
g_object_unref (src_folder);
}
gboolean
modest_ui_actions_on_edit_mode_move_to (ModestWindow *win)
{
- GtkWidget *dialog = NULL, *folder_view = NULL;
- ModestMainWindow *main_window;
+ GtkWidget *dialog = NULL;
MoveToInfo *helper = NULL;
TnyList *list_to_move;
g_return_val_if_fail (MODEST_IS_WINDOW (win), FALSE);
+#ifndef MODEST_TOOLKIT_HILDON2
/* Get the main window if exists */
+ ModestMainWindow *main_window;
if (MODEST_IS_MAIN_WINDOW (win))
main_window = MODEST_MAIN_WINDOW (win);
else
MODEST_MAIN_WINDOW_WIDGET_TYPE_FOLDER_VIEW);
else
folder_view = NULL;
+#endif
list_to_move = modest_platform_get_list_to_move (MODEST_WINDOW (win));
}
/* Create and run the dialog */
- dialog = create_move_to_dialog (GTK_WINDOW (win), folder_view);
+ dialog = create_move_to_dialog (GTK_WINDOW (win), NULL);
modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),
GTK_WINDOW (dialog),
(GtkWindow *) win);
/* Create helper */
helper = g_slice_new0 (MoveToInfo);
- helper->list = modest_platform_get_list_to_move (MODEST_WINDOW (win));
+ helper->list = list_to_move;
helper->win = win;
/* Listen to response signal */
TnyFolderStore *selected_folder = NULL;
TnyFolderType folder_type;
+
+ /* TODO: this does not work in Fremantle */
mgr = modest_runtime_get_window_mgr ();
main_window = MODEST_MAIN_WINDOW (modest_window_mgr_get_main_window (mgr,
FALSE));/* don't create */