gnome-control-center r8826 - in trunk/capplets: appearance common



Author: jensg
Date: Tue Jul 29 20:21:47 2008
New Revision: 8826
URL: http://svn.gnome.org/viewvc/gnome-control-center?rev=8826&view=rev

Log:
2008-07-29  Jens Granseuer  <jensgr gmx net>

	* file-transfer-dialog.c: (file_transfer_job_destroy),
	(file_transfer_job_schedule), (file_transfer_dialog_copy_async):
	make the file transfer dialog work with GFiles instead gchar paths
	internally

2008-07-29  Jens Granseuer  <jensgr gmx net>

	* theme-installer.c: (gnome_theme_install_from_uri): file transfer
	dialog now uses GFiles internally, so update the caller


Modified:
   trunk/capplets/appearance/ChangeLog
   trunk/capplets/appearance/theme-installer.c
   trunk/capplets/common/ChangeLog
   trunk/capplets/common/file-transfer-dialog.c

Modified: trunk/capplets/appearance/theme-installer.c
==============================================================================
--- trunk/capplets/appearance/theme-installer.c	(original)
+++ trunk/capplets/appearance/theme-installer.c	Tue Jul 29 20:21:47 2008
@@ -654,7 +654,7 @@
 	}
 	g_free (base);
 
-	src = g_list_append (NULL, g_strdup (filename));
+	src = g_list_append (NULL, g_file_new_for_path (filename));
 
 	path = NULL;
 	do {
@@ -667,7 +667,7 @@
 	} while (g_file_test (path, G_FILE_TEST_EXISTS));
 
 
-	target = g_list_append (NULL, path);
+	target = g_list_append (NULL, g_file_new_for_path (path));
 
 	dialog = file_transfer_dialog_new_with_parent (parent);
 	g_signal_connect (dialog, "cancel",
@@ -681,9 +681,10 @@
 					 G_PRIORITY_DEFAULT);
 	gtk_widget_show (dialog);
 
-	g_list_foreach (src, (GFunc) g_free, NULL);
-	/* don't free the target item since we're using that for the signals */
+	/* don't free the path since we're using that for the signals */
+	g_list_foreach (src, (GFunc) g_object_unref, NULL);
 	g_list_free (src);
+	g_list_foreach (target, (GFunc) g_object_unref, NULL);
 	g_list_free (target);
 }
 

Modified: trunk/capplets/common/file-transfer-dialog.c
==============================================================================
--- trunk/capplets/common/file-transfer-dialog.c	(original)
+++ trunk/capplets/common/file-transfer-dialog.c	Tue Jul 29 20:21:47 2008
@@ -67,8 +67,8 @@
 {
 	FileTransferDialog *dialog;
 	GtkDialog *overwrite_dialog;
-	GSList *source_uris;
-	GSList *target_uris;
+	GSList *source_files;
+	GSList *target_files;
 	FileTransferDialogOptions options;
 } FileTransferJob;
 
@@ -399,10 +399,10 @@
 file_transfer_job_destroy (FileTransferJob *job)
 {
 	g_object_unref (job->dialog);
-	g_slist_foreach (job->source_uris, (GFunc) g_free, NULL);
-	g_slist_foreach (job->target_uris, (GFunc) g_free, NULL);
-	g_slist_free (job->source_uris);
-	g_slist_free (job->target_uris);
+	g_slist_foreach (job->source_files, (GFunc) g_object_unref, NULL);
+	g_slist_foreach (job->target_files, (GFunc) g_object_unref, NULL);
+	g_slist_free (job->source_files);
+	g_slist_free (job->target_files);
 	if (job->overwrite_dialog != NULL)
 		gtk_widget_destroy (GTK_WIDGET (job->overwrite_dialog));
 	g_free (job);
@@ -477,18 +477,18 @@
 	gboolean retry;
 
 	/* take the first file from the list and copy it */
+	source = job->source_files->data;
+	job->source_files = g_slist_delete_link (job->source_files, job->source_files);
+
+	target = job->target_files->data;
+	job->target_files = g_slist_delete_link (job->target_files, job->target_files);
+
 	data.dialog = job->dialog;
 	data.overwrite_dialog = job->overwrite_dialog;
 	data.current_file = job->dialog->priv->nth + 1;
 	data.total_files = job->dialog->priv->total;
-	data.source = job->source_uris->data;
-	data.target = job->target_uris->data;
-
-	source = g_file_new_for_path (data.source);
-	job->source_uris = g_slist_delete_link (job->source_uris, job->source_uris);
-
-	target = g_file_new_for_path (data.target);
-	job->target_uris = g_slist_delete_link (job->target_uris, job->target_uris);
+	data.source = g_file_get_basename (source);
+	data.target = g_file_get_basename (target);
 
 	g_io_scheduler_job_send_to_mainloop (io_job,
 					     file_transfer_job_update,
@@ -546,7 +546,7 @@
 
 	if (success)
 	{
-		if (job->source_uris == NULL)
+		if (job->source_files == NULL)
 		{
 			g_io_scheduler_job_send_to_mainloop_async (io_job,
 								   (GSourceFunc) file_transfer_dialog_done,
@@ -587,13 +587,13 @@
 	n = 0;
 	for (l = g_list_last (source_files); l; l = l->prev, ++n)
 	{
-		job->source_uris = g_slist_prepend (job->source_uris,
-						    g_strdup (l->data));
+		job->source_files = g_slist_prepend (job->source_files,
+						     g_object_ref (l->data));
 	}
 	for (l = g_list_last (target_files); l; l = l->prev)
 	{
-		job->target_uris = g_slist_prepend (job->target_uris,
-						    g_strdup (l->data));
+		job->target_files = g_slist_prepend (job->target_files,
+						     g_object_ref (l->data));
 	}
 
 	g_object_set (dlg, "total_uris", n, NULL);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]