run_account_setup_wizard (ModestWindow *win)
{
ModestEasysetupWizardDialog *wizard;
-
+
g_return_if_fail (MODEST_IS_WINDOW(win));
wizard = modest_easysetup_wizard_dialog_new ();
modest_msg_view_window_first_message_selected (win)) {
modest_ui_actions_on_close_window (NULL, MODEST_WINDOW (win));
} else {
- modest_msg_view_window_select_next_message (win);
+ if (!modest_msg_view_window_select_next_message (win)) {
+ gboolean ret_value;
+ g_signal_emit_by_name (G_OBJECT (win), "delete-event", NULL, &ret_value);
+ }
}
}
g_return_if_fail (MODEST_IS_MAIN_WINDOW(main_window));
g_return_if_fail (MODEST_IS_HEADER_VIEW (header_view));
+ /* in the case the folder is empty, show the empty folder message and focus
+ * folder view */
+ if (!header && gtk_widget_is_focus (GTK_WIDGET (header_view))) {
+ if (modest_header_view_is_empty (header_view)) {
+ TnyFolder *folder = modest_header_view_get_folder (header_view);
+ GtkWidget *folder_view =
+ modest_main_window_get_child_widget (main_window,
+ MODEST_WIDGET_TYPE_FOLDER_VIEW);
+ if (folder != NULL)
+ modest_folder_view_select_folder (MODEST_FOLDER_VIEW (folder_view), folder, FALSE);
+ gtk_widget_grab_focus (GTK_WIDGET (folder_view));
+ return;
+ }
+ }
/* If no header has been selected then exit */
if (!header)
return;
account_name = modest_account_mgr_get_default_account (account_mgr);
if (!account_name) {
- g_printerr ("modest: no account found\n");
+ /* Run account setup wizard */
+ run_account_setup_wizard(MODEST_WINDOW(edit_window));
return;
}
(modest_runtime_get_account_store(),
account_name));
if (!transport_account) {
- g_printerr ("modest: no transport account found for '%s'\n", account_name);
- g_free (account_name);
- modest_msg_edit_window_free_msg_data (edit_window, data);
+ /* Run account setup wizard */
+ run_account_setup_wizard(MODEST_WINDOW(edit_window));
return;
}