#include <modest-account-mgr.h>
#include <modest-account-mgr-helpers.h>
#include <modest-icon-names.h>
+#include "widgets/modest-global-settings-dialog.h"
+#include "modest-tny-msg.h"
static gboolean init_header_columns (ModestConf *conf, gboolean overwrite);
static gboolean init_local_folders (void);
typedef struct {
ModestHeaderViewColumn col;
guint width;
+ gint sort;
} FolderCols;
static const FolderCols INBOX_COLUMNS_DETAILS[] = {
- {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40},
- {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40},
- {MODEST_HEADER_VIEW_COLUMN_FROM, 80},
- {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80},
- {MODEST_HEADER_VIEW_COLUMN_RECEIVED_DATE, 60},
- {MODEST_HEADER_VIEW_COLUMN_SIZE, 50}
+ {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_FROM, 80, 0},
+ {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80, 0},
+ {MODEST_HEADER_VIEW_COLUMN_RECEIVED_DATE, 60, 0},
+ {MODEST_HEADER_VIEW_COLUMN_SIZE, 50, 0}
};
static const FolderCols INBOX_COLUMNS_TWOLINES[] = {
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40},
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_IN, 180},
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_RECEIVED_DATE, 240}
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_IN, 180, 0},
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_RECEIVED_DATE, 240, -1}
};
static const FolderCols OUTBOX_COLUMNS_DETAILS[] = {
- {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40},
- {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40},
- {MODEST_HEADER_VIEW_COLUMN_TO, 80},
- {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80},
- {MODEST_HEADER_VIEW_COLUMN_SENT_DATE, 80},
- {MODEST_HEADER_VIEW_COLUMN_SIZE, 50}
+ {MODEST_HEADER_VIEW_COLUMN_MSGTYPE, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_ATTACH, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_TO, 80, 0},
+ {MODEST_HEADER_VIEW_COLUMN_SUBJECT, 80, 0},
+ {MODEST_HEADER_VIEW_COLUMN_SENT_DATE, 80, 0},
+ {MODEST_HEADER_VIEW_COLUMN_SIZE, 50, 0}
};
static const FolderCols OUTBOX_COLUMNS_TWOLINES[] = {
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40},
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT,180},
- {MODEST_HEADER_VIEW_COLUMN_STATUS, 240}
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT,180, 0},
+ {MODEST_HEADER_VIEW_COLUMN_STATUS, 240, 0}
};
static const FolderCols SENT_COLUMNS_TWOLINES[] = {
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40},
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT,180},
- {MODEST_HEADER_VIEW_COLUMN_COMPACT_SENT_DATE, 240}
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_FLAG, 40, 0},
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_HEADER_OUT,180, 0},
+ {MODEST_HEADER_VIEW_COLUMN_COMPACT_SENT_DATE, 240, -1}
};
#ifdef MODEST_PLATFORM_MAEMO
init_debug_g_type();
init_debug_logging();
- g_thread_init(NULL);
+ if (!g_thread_supported())
+ g_thread_init(NULL);
+
gdk_threads_init ();
if (!modest_runtime_init()) {
/* Set application name */
g_set_application_name (modest_platform_get_app_name());
- g_warning (modest_platform_get_app_name());
+ /* g_message (modest_platform_get_app_name()); */
init_stock_icons ();
return TRUE;
/* the format is necessarily the same as the one in modest-widget-memory */
str = g_string_new (NULL);
for (i = 0; i != col_num; ++i)
- g_string_append_printf (str, "%d:%d ",
- cols[i].col, cols[i].width);
+ g_string_append_printf (str, "%d:%d:%d ",
+ cols[i].col, cols[i].width, cols[i].sort);
modest_conf_set_string (conf, key, str->str, NULL);
g_free (key);
}
-
+/* TODO: This is a duplicate of modest_account_mgr_set_first_account_as_default(). */
/**
* init_default_account_maybe:
*
gchar *default_account;
gboolean retval = TRUE;
- all_accounts = modest_account_mgr_account_names (acc_mgr);
+ all_accounts = modest_account_mgr_account_names (acc_mgr, TRUE /* enabled accounts only */);
if (all_accounts) { /* if there are any accounts, there should be a default one */
default_account =
modest_account_mgr_get_default_account (acc_mgr);
init_debug_g_type (void)
{
GTypeDebugFlags gflags;
- ModestInitDebugFlags mflags;
+ ModestRuntimeDebugFlags mflags;
gflags = 0;
mflags = modest_runtime_get_debug_flags ();
- if (mflags & MODEST_INIT_DEBUG_DEBUG_OBJECTS)
+ if (mflags & MODEST_RUNTIME_DEBUG_DEBUG_OBJECTS)
gflags |= G_TYPE_DEBUG_OBJECTS;
- if (mflags & MODEST_INIT_DEBUG_DEBUG_SIGNALS)
+ if (mflags & MODEST_RUNTIME_DEBUG_DEBUG_SIGNALS)
gflags |= G_TYPE_DEBUG_SIGNALS;
g_type_init_with_debug_flags (gflags);
static void
init_debug_logging (void)
{
- ModestInitDebugFlags mflags;
+ ModestRuntimeDebugFlags mflags;
mflags = modest_runtime_get_debug_flags ();
- if (mflags & MODEST_INIT_DEBUG_ABORT_ON_WARNING)
+ if (mflags & MODEST_RUNTIME_DEBUG_ABORT_ON_WARNING)
g_log_set_always_fatal (G_LOG_LEVEL_ERROR |
G_LOG_LEVEL_CRITICAL |
G_LOG_LEVEL_WARNING);
static void
init_i18n (void)
{
+ const gchar* gettext_package;
/* Setup gettext, to use our .po files: */
/* GETTEXT_PACKAGE and MODEST_LOCALE_DIR are defined in config.h */
- bindtextdomain (GETTEXT_PACKAGE, MODEST_LOCALE_DIR);
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- textdomain (GETTEXT_PACKAGE);
+#ifdef MODEST_HILDON_VERSION_0
+ gettext_package = GETTEXT_PACKAGE;
+ bindtextdomain (gettext_package, MODEST_LOCALE_DIR);
+#else
+ gettext_package = "osso-email"; /* HACK to use the localizations */
+ bindtextdomain (gettext_package, "/usr/share/locale");
+#endif /*MODEST_HILDON_VERSION_0*/
+
+ bind_textdomain_codeset (gettext_package, "UTF-8");
+ textdomain (gettext_package);
}
if (!modest_conf_key_exists (conf, MODEST_CONF_CONNECT_AT_STARTUP, NULL))
modest_conf_set_bool (conf, MODEST_CONF_CONNECT_AT_STARTUP, TRUE, NULL);
+ /* Global settings */
+ if (!modest_conf_key_exists (conf, MODEST_CONF_AUTO_UPDATE, NULL))
+ modest_conf_set_bool (conf, MODEST_CONF_AUTO_UPDATE, TRUE, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_UPDATE_WHEN_CONNECTED_BY, NULL))
+ modest_conf_set_int (conf, MODEST_CONF_UPDATE_WHEN_CONNECTED_BY, MODEST_CONNECTED_VIA_WLAN, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_UPDATE_INTERVAL, NULL))
+ modest_conf_set_int (conf, MODEST_CONF_UPDATE_INTERVAL, MODEST_UPDATE_INTERVAL_15_MIN, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_MSG_SIZE_LIMIT, NULL))
+ modest_conf_set_int (conf, MODEST_CONF_MSG_SIZE_LIMIT, 1000, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_PLAY_SOUND_MSG_ARRIVE, NULL))
+ modest_conf_set_bool (conf, MODEST_CONF_PLAY_SOUND_MSG_ARRIVE, FALSE, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_PREFER_FORMATTED_TEXT, NULL))
+ modest_conf_set_bool (conf, MODEST_CONF_PREFER_FORMATTED_TEXT, TRUE, NULL);
+
+ if (!modest_conf_key_exists (conf, MODEST_CONF_REPLY_TYPE, NULL))
+ modest_conf_set_int (conf, MODEST_CONF_REPLY_TYPE, MODEST_TNY_MSG_REPLY_TYPE_QUOTE, NULL);
}
else
devname[len] = '\0';
- modest_conf_set_string (conf, MODEST_CONF_DEVICE_NAME,devname, NULL);
+ GError *err = NULL;
+ if (!modest_conf_set_string (conf, MODEST_CONF_DEVICE_NAME,devname, &err)) {
+ g_printerr ("modest: error setting device name '%s': %s",
+ devname, err ? err->message: "?");
+ g_error_free (err);
+ }
}
-
+
g_free (devname);
}