示例#1
0
static void
connect_to_server (DialogData *data)
{
	if (data->conn == NULL) {
		data->conn = google_connection_new (GOOGLE_SERVICE_PICASA_WEB_ALBUM);
		data->progress_dialog = gth_progress_dialog_new (GTK_WINDOW (data->browser));
		gth_progress_dialog_add_task (GTH_PROGRESS_DIALOG (data->progress_dialog), GTH_TASK (data->conn));
	}

#ifdef HAVE_GNOME_KEYRING
	if ((data->password == NULL) && gnome_keyring_is_available ()) {
		gnome_keyring_find_password (GNOME_KEYRING_NETWORK_PASSWORD,
					     find_password_cb,
					     data,
					     NULL,
					     "user", data->email,
					     "server", "picasaweb.google.com",
					     "protocol", "http",
					     NULL);
		return;
	}
#endif

	connect_to_server_step2 (data);
}
static void
fetch_keyring_pass (IrisTask *task,
                    gpointer  user_data)
{
  MarinaGoogleReaderSourcePrivate *priv;
  
  g_return_if_fail (MARINA_IS_GOOGLE_READER_SOURCE (user_data));
  
  priv = MARINA_GOOGLE_READER_SOURCE (user_data)->priv;
  
  gnome_keyring_find_password (GNOME_KEYRING_NETWORK_PASSWORD,
                               find_password_cb,
                               g_object_ref (task), g_object_unref,
                               "user", priv->username,
                               "server", "www.google.com",
                               NULL);
}