static osso_context_t *osso_context = NULL;
-static void folder_name_insensitive_press (GtkWidget *widget, ModestWindow *window);
+static void folder_name_insensitive_press (GtkWidget *widget,
+ ModestWindow *window);
static void
on_modest_conf_update_interval_changed (ModestConf* self, const gchar *key,
/* Add accept button (with unsensitive handler) */
buttons = gtk_container_get_children (GTK_CONTAINER (GTK_DIALOG (dialog)->action_area));
accept_btn = GTK_WIDGET (buttons->next->data);
- g_signal_connect (G_OBJECT (accept_btn), "insensitive-press", G_CALLBACK (folder_name_insensitive_press), parent_window);
+ g_signal_connect (G_OBJECT (accept_btn), "insensitive-press",
+ G_CALLBACK (folder_name_insensitive_press),
+ parent_window);
/* Create label and entry */
label = gtk_label_new (label_text);
static void
folder_name_insensitive_press (GtkWidget *widget, ModestWindow *window)
{
- hildon_banner_show_information (NULL, NULL, _("(empty)"));
+ hildon_banner_show_information (NULL, NULL, _CS("ckdg_ib_enter_name"));
}
gint
return result;
}
+static void
+set_account_to_online (TnyAccount *account)
+{
+ /* TODO: This is necessary to prevent a cancel of the password dialog
+ * from making a restart necessary to be asked the password again,
+ * but it causes a hang:
+ */
+ #if 0
+ if (account && TNY_IS_CAMEL_STORE_ACCOUNT (account)) {
+ /* Make sure that store accounts are online too,
+ * because tinymail sets accounts to offline if
+ * a password dialog is ever cancelled.
+ * We don't do this for transport accounts because
+ * a) They fundamentally need network access, so they can't really be offline.
+ * b) That might cause a transport connection to happen too early.
+ */
+ GError *error = NULL;
+ tny_camel_account_set_online (TNY_CAMEL_ACCOUNT (account), TRUE, &error);
+ if (error) {
+ g_warning ("%s: tny_camel_account_set_online() returned a GError:\n %s\n",
+ __FUNCTION__, error->message);
+ g_error_free (error);
+ }
+ }
+ #endif
+}
-gboolean modest_platform_connect_and_wait (GtkWindow *parent_window)
+gboolean modest_platform_connect_and_wait (GtkWindow *parent_window, TnyAccount *account)
{
if (connect_request_in_progress)
return FALSE;
if (tny_device_is_online (device)) {
printf ("DEBUG: %s: Already online.\n", __FUNCTION__);
+ set_account_to_online (account);
return TRUE;
} else
{
/* g_main_context_unref (context); */
g_slice_free (UtilIdleData, data);
-
- return tny_device_is_online (device);
+
+ gboolean result = tny_device_is_online (device);
+
+ if (result)
+ set_account_to_online (account);
+
+ return result;
}
gboolean modest_platform_connect_and_wait_if_network_account (GtkWindow *parent_window, TnyAccount *account)
}
}
- return modest_platform_connect_and_wait (parent_window);
+ return modest_platform_connect_and_wait (parent_window, account);
}
gboolean modest_platform_connect_and_wait_if_network_folderstore (GtkWindow *parent_window, TnyFolderStore *folder_store)