X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmaemo%2Fmodest-maemo-utils.c;h=d1915fdfb5c483b056c3b174ec67f9dff93476fe;hp=5c365748219146bc3307f594e20c5d96216b9856;hb=40a8f5cbe03bd040fe3403dbfa6806df4fb6bc8a;hpb=64304152fe6c74963e5f2bce8597c479e24775f4 diff --git a/src/maemo/modest-maemo-utils.c b/src/maemo/modest-maemo-utils.c index 5c36574..d1915fd 100644 --- a/src/maemo/modest-maemo-utils.c +++ b/src/maemo/modest-maemo-utils.c @@ -45,6 +45,7 @@ #include "modest-hildon-includes.h" #include "modest-maemo-utils.h" +#include "modest-platform.h" /* * For getting and tracking the Bluetooth name @@ -329,7 +330,14 @@ on_camel_account_get_supported_secure_authentication ( GList *result = NULL; TnyIterator* iter = tny_list_create_iterator(auth_types); while (!tny_iterator_is_done(iter)) { - const gchar *auth_name = tny_pair_get_name(TNY_PAIR(tny_iterator_get_current(iter))); + TnyPair *pair = TNY_PAIR(tny_iterator_get_current(iter)); + const gchar *auth_name = NULL; + if (pair) { + auth_name = tny_pair_get_name(pair); + g_object_unref (pair); + pair = NULL; + } + printf("DEBUG: %s: auth_name=%s\n", __FUNCTION__, auth_name); ModestPair *matching = modest_pair_list_find_by_first_as_string (pairs, auth_name); @@ -373,6 +381,10 @@ GList* modest_maemo_utils_get_supported_secure_authentication_methods (ModestTra { g_return_val_if_fail (proto != MODEST_PROTOCOL_TRANSPORT_STORE_UNKNOWN, NULL); + /* We need a connection to get the capabilities; */ + if (!modest_platform_connect_and_wait (GTK_WINDOW (parent_window), NULL)) + return NULL; + /* result = g_list_append (result, GINT_TO_POINTER (MODEST_PROTOCOL_AUTH_CRAMMD5)); */ @@ -395,7 +407,6 @@ GList* modest_maemo_utils_get_supported_secure_authentication_methods (ModestTra tny_account = NULL; } - /* TODO: Handle connection requests. */ if (!tny_account) { g_printerr ("%s could not create tny account.", __FUNCTION__); @@ -539,6 +550,37 @@ on_hide (GtkDialog *dialog, gpointer user_data) } #endif +#if 0 /* Not used now. */ +/* user_data for the idle callback: */ +typedef struct +{ + GtkWindow *parent_window; + gchar *message; +} ModestIdleNoteInfo; + +static gboolean +on_idle_show_information(gpointer user_data) +{ + ModestIdleNoteInfo *info = (ModestIdleNoteInfo*)user_data; + + modest_maemo_show_information_note_and_forget (info->parent_window, info->message); + + g_free (info->message); + g_slice_free (ModestIdleNoteInfo, info); + + return FALSE; /* Don't call this again. */ +} + +void modest_maemo_show_information_note_in_main_context_and_forget (GtkWindow *parent_window, const gchar* message) +{ + ModestIdleNoteInfo *info = g_slice_new (ModestIdleNoteInfo); + info->parent_window = parent_window; + info->message = g_strdup (message); + + g_idle_add (on_idle_show_information, info); +} +#endif + void modest_maemo_show_dialog_and_forget (GtkWindow *parent_window, GtkDialog *dialog) { gtk_window_set_transient_for (GTK_WINDOW (dialog), parent_window); @@ -548,6 +590,8 @@ void modest_maemo_show_dialog_and_forget (GtkWindow *parent_window, GtkDialog *d gtk_widget_show (GTK_WIDGET (dialog)); } + + void modest_maemo_set_thumbable_scrollbar (GtkScrolledWindow *win, gboolean thumbable) {