[nautilus/wip/antoniof/drag-source-changes: 1/3] file-utilities: Move convert_file_list_to_gdk_file_list()
- From: António Fernandes <antoniof src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus/wip/antoniof/drag-source-changes: 1/3] file-utilities: Move convert_file_list_to_gdk_file_list()
- Date: Sat, 4 Jun 2022 18:04:48 +0000 (UTC)
commit 592adf85dbf66c42b973c7e75d4d813ac1ea5433
Author: Corey Berla <corey berla me>
Date: Tue May 17 10:30:20 2022 -0700
file-utilities: Move convert_file_list_to_gdk_file_list()
Move convert_file_list_to_gdk_file_list() to file-utilities so it
can be reused by files-view for DND.
src/nautilus-clipboard.c | 18 +-----------------
src/nautilus-file-utilities.c | 16 ++++++++++++++++
src/nautilus-file-utilities.h | 2 ++
3 files changed, 19 insertions(+), 17 deletions(-)
---
diff --git a/src/nautilus-clipboard.c b/src/nautilus-clipboard.c
index 9c8ec4d48..05193f96b 100644
--- a/src/nautilus-clipboard.c
+++ b/src/nautilus-clipboard.c
@@ -132,22 +132,6 @@ nautilus_clipboard_clear_if_colliding_uris (GtkWidget *widget,
}
#endif
-/*
- * This asumes the implementation of GTK_TYPE_FILE_LIST is a GSList<GFile>.
- * As of writing this, the API docs don't provide for this assumption.
- */
-static GSList *
-convert_file_list_to_gdk_file_list (NautilusClipboard *clip)
-{
- GSList *file_list = NULL;
- for (GList *l = clip->files; l != NULL; l = l->next)
- {
- file_list = g_slist_prepend (file_list,
- nautilus_file_get_location (l->data));
- }
- return g_slist_reverse (file_list);
-}
-
static void
nautilus_clipboard_serialize (GdkContentSerializer *serializer)
{
@@ -290,7 +274,7 @@ nautilus_clipboard_prepare_for_files (GdkClipboard *clipboard,
clip->cut = cut;
clip->files = nautilus_file_list_copy (files);
- file_list = convert_file_list_to_gdk_file_list (clip);
+ file_list = convert_file_list_to_gdk_file_list (clip->files);
providers[0] = gdk_content_provider_new_typed (NAUTILUS_TYPE_CLIPBOARD, clip);
providers[1] = gdk_content_provider_new_typed (GDK_TYPE_FILE_LIST, file_list);
diff --git a/src/nautilus-file-utilities.c b/src/nautilus-file-utilities.c
index 3b161f52b..32c11f6dc 100644
--- a/src/nautilus-file-utilities.c
+++ b/src/nautilus-file-utilities.c
@@ -1487,3 +1487,19 @@ location_settings_search_get_recursive_for_location (GFile *location)
return recursive;
}
+
+/*
+ * This asumes the implementation of GDK_TYPE_FILE_LIST is a GSList<GFile>.
+ * As of writing this, the API docs don't provide for this assumption.
+ */
+GSList *
+convert_file_list_to_gdk_file_list (GList *source_list)
+{
+ GSList *file_list = NULL;
+ for (GList *l = source_list; l != NULL; l = l->next)
+ {
+ file_list = g_slist_prepend (file_list,
+ nautilus_file_get_location (l->data));
+ }
+ return g_slist_reverse (file_list);
+}
diff --git a/src/nautilus-file-utilities.h b/src/nautilus-file-utilities.h
index 67df0e4d9..f8c696997 100644
--- a/src/nautilus-file-utilities.h
+++ b/src/nautilus-file-utilities.h
@@ -141,3 +141,5 @@ gchar * nautilus_uri_to_native_uri (const gchar *uri);
NautilusQueryRecursive location_settings_search_get_recursive (void);
NautilusQueryRecursive location_settings_search_get_recursive_for_location (GFile *location);
+
+GSList * convert_file_list_to_gdk_file_list (GList *source_list);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]