X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-init.c;h=7880ee613b401b62ac2f1630dc408c133bf35a5d;hp=5d3189a723ec9cfd7b67db897c6a12e65e4e7fd1;hb=0e377cfc61f7e67a47e50096e1ad4a3dead53731;hpb=aae23d8d941e2023b6158db1795bfbe4e3e54673 diff --git a/src/modest-init.c b/src/modest-init.c index 5d3189a..7880ee6 100644 --- a/src/modest-init.c +++ b/src/modest-init.c @@ -36,6 +36,7 @@ #include #include #include +#include "modest-address-book.h" #include #include #include @@ -186,7 +187,7 @@ force_ke_recv_load (void) { if (strcmp ("cerm_device_memory_full", _KR("cerm_device_memory_full")) == 0) { - g_warning ("%s: cannot get translation for cerm_device_memory_full", + g_debug ("%s: cannot get translation for cerm_device_memory_full", __FUNCTION__); return FALSE; } @@ -194,7 +195,6 @@ force_ke_recv_load (void) return TRUE; } - gboolean modest_init (int argc, char *argv[]) { @@ -203,8 +203,8 @@ modest_init (int argc, char *argv[]) if (_is_initialized) { g_printerr ("modest: %s may only be invoked once\n", __FUNCTION__); return FALSE; - } - + } + init_i18n(); if (!force_ke_recv_load()) { @@ -220,31 +220,34 @@ modest_init (int argc, char *argv[]) /* initialize the prng, we need it when creating random files */ srandom((int)getpid()); - + if (!gnome_vfs_initialized()) { if (!gnome_vfs_init ()) { g_printerr ("modest: failed to init gnome-vfs\n"); return FALSE; } } - + if (!modest_runtime_init()) { modest_init_uninit (); g_printerr ("modest: failed to initialize the modest runtime\n"); return FALSE; } - + modest_plugin_factory_load_all (modest_runtime_get_plugin_factory ()); /* do an initial guess for the device name */ init_device_name (modest_runtime_get_conf()); - + if (!modest_platform_init(argc, argv)) { modest_init_uninit (); g_printerr ("modest: failed to run platform-specific initialization\n"); return FALSE; } + /* Initialize addressbook */ + modest_address_book_init (); + reset = modest_runtime_get_debug_flags () & MODEST_RUNTIME_DEBUG_FACTORY_SETTINGS; if (!init_header_columns(modest_runtime_get_conf(), reset)) { modest_init_uninit (); @@ -253,19 +256,19 @@ modest_init (int argc, char *argv[]) } init_default_settings (modest_runtime_get_conf ()); - + if (!modest_init_local_folders(NULL)) { modest_init_uninit (); g_printerr ("modest: failed to init local folders\n"); return FALSE; } - + if (!init_default_account_maybe (modest_runtime_get_account_mgr ())) { modest_init_uninit (); g_printerr ("modest: failed to init default account\n"); return FALSE; - } - + } + if (!init_ui (argc, argv)) { modest_init_uninit (); g_printerr ("modest: failed to init ui\n"); @@ -281,7 +284,7 @@ init_ui (gint argc, gchar** argv) { /* Set application name */ g_set_application_name (modest_platform_get_app_name()); - /* g_message (modest_platform_get_app_name()); */ + /* g_debug (modest_platform_get_app_name()); */ /* Init stock icons */ init_stock_icons (); @@ -564,27 +567,51 @@ init_debug_g_type (void) g_type_init_with_debug_flags (gflags); } +#ifndef DEBUG +static void +null_log(const gchar* dom, + GLogLevelFlags l, + const gchar* m, + gpointer d) +{ + return; +}; +#endif + static void init_debug_logging (void) { ModestRuntimeDebugFlags mflags; mflags = modest_runtime_get_debug_flags (); - + +#ifndef DEBUG + if (! (mflags & MODEST_RUNTIME_DEBUG_CODE)) { + g_log_set_handler (NULL, G_LOG_LEVEL_DEBUG, null_log, NULL); + } +#endif + 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 *lc_messages = getenv ("LC_MESSAGES"); + const gchar *lc_messages = setlocale (LC_MESSAGES, NULL); if (!lc_messages) { setenv ("LANGUAGE", "en_GB", 1); setenv ("LC_MESSAGES", "en_GB", 1); +#ifdef MODEST_PLATFORM_GNOME + } else { + gchar *new_lc_messages; + new_lc_messages = g_strconcat (lc_messages, ":en_GB", NULL); + setenv ("LANGUAGE", new_lc_messages, 1); + setenv ("LC_MESSAGES", new_lc_messages, 1); + g_free (new_lc_messages); +#endif } bindtextdomain (GETTEXT_PACKAGE, MODEST_LOCALE_DIR); @@ -680,7 +707,7 @@ init_stock_icons (void) g_object_unref (pixbuf); } else - g_warning ("Modest: %s: failed to load %s icon", __FUNCTION__, items_names[i]); + g_warning ("%s: failed to load %s icon", __FUNCTION__, items_names[i]); } /* Drop our reference to the factory, GTK will hold a reference. */ g_object_unref (factory); @@ -729,14 +756,20 @@ init_default_settings (ModestConf *conf) 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_NOTIFICATIONS, NULL)) + modest_conf_set_bool (conf, MODEST_CONF_NOTIFICATIONS, TRUE, NULL); + + if (!modest_conf_key_exists (conf, MODEST_CONF_AUTO_ADD_TO_CONTACTS, NULL)) + modest_conf_set_bool (conf, MODEST_CONF_AUTO_ADD_TO_CONTACTS, 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_OR_WIMAX, 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); + modest_conf_set_int (conf, MODEST_CONF_UPDATE_INTERVAL, MODEST_UPDATE_INTERVAL_30_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); + modest_conf_set_int (conf, MODEST_CONF_MSG_SIZE_LIMIT, 100, 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);