#endif
/* create views */
mainwin->folderview = folderview = folderview_create();
- mainwin->summaryview = summaryview = summary_create();
+ mainwin->summaryview = summaryview = summary_create(mainwin);
mainwin->messageview = messageview = messageview_create(mainwin);
/* init log instances data before creating log views */
ADD_MENU_ACCEL_GROUP_TO_WINDOW(summaryview->popupmenu, mainwin->window);
-/* FIXME menu_connect_identical_items(); */
-
#ifndef GENERIC_UMPC
gtk_window_iconify(GTK_WINDOW(mainwin->window));
#endif
static void mailing_list_compose (GtkWidget *w, gpointer *data)
{
const gchar *mailto;
+ PrefsAccount *account = NULL;
+ FolderItem *folder_item = NULL;
mailto = gtk_label_get_text(GTK_LABEL (gtk_bin_get_child(GTK_BIN((w)))));
+ if (mainwindow_get_mainwindow()) {
+ folder_item = mainwindow_get_mainwindow()->summaryview->folder_item;
+ if (folder_item && folder_item->prefs && folder_item->prefs->enable_default_account)
+ account = account_find_from_id(folder_item->prefs->default_account);
+ if (folder_item && !account)
+ account = account_find_from_item(folder_item);
+ }
if (mailto)
- compose_new(NULL, mailto+7, NULL);
+ compose_new_with_folderitem(account, folder_item, mailto+7);
}
static void mailing_list_open_uri (GtkWidget *w, gpointer *data)
MainWindow *mainwin;
gboolean have_connectivity;
-#ifdef HAVE_NETWORKMANAGER
+#ifdef HAVE_NETWORKMANAGER_SUPPORT
have_connectivity = networkmanager_is_online(NULL);
#else
have_connectivity = TRUE;
if(have_connectivity)
mainwindow_check_synchronise(mainwin, TRUE);
prefs_common.work_offline = TRUE;
- imap_disconnect_all();
+ if(have_connectivity)
+ imap_disconnect_all();
hooks_invoke(OFFLINE_SWITCH_HOOKLIST, NULL);
} else {
/*go online */