diff --git a/SOURCES/file-Generate-thumbnails-when-the-preview-icon-is-av.patch b/SOURCES/file-Generate-thumbnails-when-the-preview-icon-is-av.patch new file mode 100644 index 0000000..9af2837 --- /dev/null +++ b/SOURCES/file-Generate-thumbnails-when-the-preview-icon-is-av.patch @@ -0,0 +1,76 @@ +From 755cfdce38312dfc6572839a6fdbb1b39e1b4fe6 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Wed, 7 Dec 2022 08:51:51 +0100 +Subject: [PATCH] file: Generate thumbnails when the preview icon is available + +Currently, thumbnails are not shown for MTP/GPhoto2 locations. The +backends return `G_FILESYSTEM_PREVIEW_TYPE_NEVER` in order to prevent +thumbnailers to make them unresponsive. However, the backends provide +preview icons for some file types and the `GnomeDesktopThumbnailFactory` +is smart enough not to invoke thumbnailers if the icon is available +(see https://bugzilla.gnome.org/show_bug.cgi?id=738503). Let's allow +the thumbnail generation from the preview icons if they are available. +This should not affect backend responsiveness much. + +Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1921 +--- + src/nautilus-file-private.h | 3 ++- + src/nautilus-file.c | 14 ++++++++++++++ + 2 files changed, 16 insertions(+), 1 deletion(-) + +diff --git a/src/nautilus-file-private.h b/src/nautilus-file-private.h +index d5d26c8b3..e9d49530c 100644 +--- a/src/nautilus-file-private.h ++++ b/src/nautilus-file-private.h +@@ -27,7 +27,7 @@ + #include + + #define NAUTILUS_FILE_DEFAULT_ATTRIBUTES \ +- "standard::*,access::*,mountable::*,time::*,unix::*,owner::*,selinux::*,thumbnail::*,id::filesystem,trash::orig-path,trash::deletion-date,metadata::*,recent::*" ++ "standard::*,access::*,mountable::*,time::*,unix::*,owner::*,selinux::*,thumbnail::*,id::filesystem,trash::orig-path,trash::deletion-date,metadata::*,recent::*,preview::icon" + + /* These are in the typical sort order. Known things come first, then + * things where we can't know, finally things where we don't yet know. +@@ -185,6 +185,7 @@ struct NautilusFileDetails + eel_boolean_bit start_stop_type : 3; /* GDriveStartStopType */ + eel_boolean_bit can_poll_for_media : 1; + eel_boolean_bit is_media_check_automatic : 1; ++ eel_boolean_bit has_preview_icon : 1; + + eel_boolean_bit filesystem_readonly : 1; + eel_boolean_bit filesystem_use_preview : 2; /* GFilesystemPreviewType */ +diff --git a/src/nautilus-file.c b/src/nautilus-file.c +index 2999f2fa5..d9d988ccd 100644 +--- a/src/nautilus-file.c ++++ b/src/nautilus-file.c +@@ -2914,6 +2914,11 @@ update_info_internal (NautilusFile *file, + file->details->trash_orig_path = g_strdup (trash_orig_path); + } + ++ if (g_file_info_has_attribute (info, G_FILE_ATTRIBUTE_PREVIEW_ICON)) ++ { ++ file->details->has_preview_icon = TRUE; ++ } ++ + changed |= + nautilus_file_update_metadata_from_info (file, info); + +@@ -4836,6 +4841,15 @@ nautilus_file_should_show_thumbnail (NautilusFile *file) + return FALSE; + } + ++ if (show_file_thumbs != NAUTILUS_SPEED_TRADEOFF_NEVER && ++ file->details->has_preview_icon) ++ { ++ /* The thumbnail should be generated if the preview icon is available ++ * regardless of the filesystem type (i.e. for MTP/GPhoto2 backends). ++ */ ++ return TRUE; ++ } ++ + return get_speed_tradeoff_preference_for_file (file, show_file_thumbs); + } + +-- +2.39.2 + diff --git a/SOURCES/file-utilities-Prevent-passing-NULL-to-g_object_unre.patch b/SOURCES/file-utilities-Prevent-passing-NULL-to-g_object_unre.patch new file mode 100644 index 0000000..3bce483 --- /dev/null +++ b/SOURCES/file-utilities-Prevent-passing-NULL-to-g_object_unre.patch @@ -0,0 +1,42 @@ +From e03d731e3dcb8d0f52ffbc6faa188802b742d1e9 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Thu, 26 Jan 2023 13:20:51 +0100 +Subject: [PATCH] file-utilities: Prevent passing NULL to g_object_unref + +The `nautilus_find_existing_uri_in_hierarchy` function calls the +`g_object_unref` with a `NULL` pointer when `g_file_query_info` fails. +This leads to a crash e.g. when parent directory of the currently +opened location is removed. Let's port the code to use `g_autoptr` to +avoid that. +--- + src/nautilus-file-utilities.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/nautilus-file-utilities.c b/src/nautilus-file-utilities.c +index e8f1ca2fb..1c913dbad 100644 +--- a/src/nautilus-file-utilities.c ++++ b/src/nautilus-file-utilities.c +@@ -598,7 +598,6 @@ nautilus_generate_unique_file_in_directory (GFile *directory, + GFile * + nautilus_find_existing_uri_in_hierarchy (GFile *location) + { +- GFileInfo *info; + GFile *tmp; + + g_assert (location != NULL); +@@ -606,10 +605,11 @@ nautilus_find_existing_uri_in_hierarchy (GFile *location) + location = g_object_ref (location); + while (location != NULL) + { ++ g_autoptr (GFileInfo) info = NULL; ++ + info = g_file_query_info (location, + G_FILE_ATTRIBUTE_STANDARD_NAME, + 0, NULL, NULL); +- g_object_unref (info); + if (info != NULL) + { + return location; +-- +2.40.0 + diff --git a/SOURCES/pathbar-Do-nothing-when-current-location-disappears.patch b/SOURCES/pathbar-Do-nothing-when-current-location-disappears.patch new file mode 100644 index 0000000..0af7743 --- /dev/null +++ b/SOURCES/pathbar-Do-nothing-when-current-location-disappears.patch @@ -0,0 +1,59 @@ +From 151af5733a11dc4aceb8ecf4c9eeafcaab188451 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Fri, 27 Jan 2023 11:02:22 +0100 +Subject: [PATCH] pathbar: Do nothing when current location disappears + +The pathbar automatically clear all the buttons when the current location +is marked as gone. This was needed earlier, when child folders where shown +in some cases, but this is no more needed nowadays. Let's drop that code. +--- + src/nautilus-pathbar.c | 33 +-------------------------------- + 1 file changed, 1 insertion(+), 32 deletions(-) + +diff --git a/src/nautilus-pathbar.c b/src/nautilus-pathbar.c +index edc0fff56..4bd9ff5b2 100644 +--- a/src/nautilus-pathbar.c ++++ b/src/nautilus-pathbar.c +@@ -1445,38 +1445,7 @@ button_data_file_changed (NautilusFile *file, + } + else if (nautilus_file_is_gone (file)) + { +- gint idx, position; +- +- /* if the current or a parent location are gone, clear all the buttons, +- * the view will set the new path. +- */ +- current_location = nautilus_file_get_location (current_button_data->file); +- +- if (g_file_has_prefix (current_location, location) || +- g_file_equal (current_location, location)) +- { +- nautilus_path_bar_clear_buttons (self); +- } +- else if (g_file_has_prefix (location, current_location)) +- { +- /* remove this and the following buttons */ +- position = g_list_position (self->button_list, +- g_list_find (self->button_list, button_data)); +- +- if (position != -1) +- { +- for (idx = 0; idx <= position; idx++) +- { +- ButtonData *data; +- +- data = BUTTON_DATA (self->button_list->data); +- +- gtk_container_remove (GTK_CONTAINER (self), data->button); +- } +- } +- } +- +- g_object_unref (current_location); ++ /* Do nothing here, the view will set new path if needed. */ + g_object_unref (location); + return; + } +-- +2.40.0 + diff --git a/SOURCES/window-slot-Fix-conditions-to-restore-selection-when.patch b/SOURCES/window-slot-Fix-conditions-to-restore-selection-when.patch new file mode 100644 index 0000000..d902d64 --- /dev/null +++ b/SOURCES/window-slot-Fix-conditions-to-restore-selection-when.patch @@ -0,0 +1,37 @@ +From 87d2f2cfd61baf813aee204be570172b78159281 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Wed, 14 Jun 2023 12:52:02 +0200 +Subject: [PATCH] window-slot: Fix conditions to restore selection when + reloading + +Currently, the `nautilus_window_slot_force_reload` function doesn't +preserve selection or position. However, there is a code that should do +it. The code is executed only when `new_content_view != NULL`, but it +is based on the `content_view` property. This seems to be a regression +caused by the commit 9806d70e. Let's fix that condition in order to +ensure that the selection and position are restored. +--- + src/nautilus-window-slot.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/nautilus-window-slot.c b/src/nautilus-window-slot.c +index 2bfb3f3ce..8ceac9562 100644 +--- a/src/nautilus-window-slot.c ++++ b/src/nautilus-window-slot.c +@@ -2376,11 +2376,11 @@ nautilus_window_slot_force_reload (NautilusWindowSlot *self) + g_object_ref (location); + current_pos = NULL; + +- if (priv->new_content_view) ++ if (priv->content_view) + { + selection = nautilus_view_get_selection (priv->content_view); + +- if (NAUTILUS_IS_FILES_VIEW (priv->new_content_view)) ++ if (NAUTILUS_IS_FILES_VIEW (priv->content_view)) + { + current_pos = nautilus_files_view_get_first_visible_file (NAUTILUS_FILES_VIEW (priv->content_view)); + } +-- +2.40.0 + diff --git a/SOURCES/window-slot-Force-reload-current-location-when-it-re.patch b/SOURCES/window-slot-Force-reload-current-location-when-it-re.patch new file mode 100644 index 0000000..8e3780c --- /dev/null +++ b/SOURCES/window-slot-Force-reload-current-location-when-it-re.patch @@ -0,0 +1,43 @@ +From f68481d2d8393f1ba1a9b0a86a1b28b6ac303a63 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Wed, 24 May 2023 13:09:35 +0200 +Subject: [PATCH] window-slot: Force reload current location when it reappears + +When the currently opened location disappears, nautilus tries to +reopen it thanks to the commit b0e28bc1. However, the +`nautilus_window_slot_open_location_full` function doesn't begin the +location change when the old location is the same as the new one. This +is a problem because the old `NautilusFile` object is marked as gone +and thus monitoring and perhaps some other stuff won't work. Let's use +the `nautilus_window_slot_force_reload` function instead, in this case, +to ensure that the underlying `NautilusFile` is updated. +--- + src/nautilus-window-slot.c | 12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + +diff --git a/src/nautilus-window-slot.c b/src/nautilus-window-slot.c +index 811152a21..561b34f12 100644 +--- a/src/nautilus-window-slot.c ++++ b/src/nautilus-window-slot.c +@@ -1458,7 +1458,17 @@ viewed_file_changed_callback (NautilusFile *file, + go_to_file = g_file_new_for_path (g_get_home_dir ()); + } + +- nautilus_window_slot_open_location_full (self, go_to_file, 0, NULL); ++ if (g_file_equal (location, go_to_file)) ++ { ++ /* Path gone by time out may have been remounted by ++ * `nautilus_find_existing_uri_in_hierarchy()`. ++ */ ++ nautilus_window_slot_force_reload (self); ++ } ++ else ++ { ++ nautilus_window_slot_open_location_full (self, go_to_file, 0, NULL); ++ } + + g_object_unref (go_to_file); + g_object_unref (location); +-- +2.40.0 + diff --git a/SOURCES/window-slot-Try-current-location-even-if-it-is-marke.patch b/SOURCES/window-slot-Try-current-location-even-if-it-is-marke.patch new file mode 100644 index 0000000..768afdd --- /dev/null +++ b/SOURCES/window-slot-Try-current-location-even-if-it-is-marke.patch @@ -0,0 +1,72 @@ +From b0e28bc19c065b4bc1d6fdea922ae2c09115b0e6 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy +Date: Tue, 24 Jan 2023 12:13:15 +0100 +Subject: [PATCH] window-slot: Try current location even if it is marked as + gone + +When the current location is marked as gone, Nautilus jumps to the +first existing parent currently (except for non-native locations and +mount roots). This is fine in most cases, but not for autofs locations +as Nautilus jumps to parent everytime autofs mount timeouted. It would +be better to stay in the same folder in this case. Let's try the current +location first even if it is marked as gone to ensure that. It would be +perhaps even better to prevent autofs locations somehow from timeouting +at all, or avoid immediate remounting at least, but those solutions +don't look easy to implement. + +Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1514 +--- + src/nautilus-window-slot.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/src/nautilus-window-slot.c b/src/nautilus-window-slot.c +index c06dc3432..a1af61887 100644 +--- a/src/nautilus-window-slot.c ++++ b/src/nautilus-window-slot.c +@@ -1442,11 +1442,10 @@ viewed_file_changed_callback (NautilusFile *file, + if (priv->viewed_file_seen) + { + GFile *go_to_file; +- GFile *parent; + GFile *location; + GMount *mount; ++ gboolean find_existing = FALSE; + +- parent = NULL; + location = nautilus_file_get_location (file); + + if (g_file_is_native (location)) +@@ -1455,16 +1454,18 @@ viewed_file_changed_callback (NautilusFile *file, + + if (mount == NULL) + { +- parent = g_file_get_parent (location); ++ find_existing = TRUE; + } + + g_clear_object (&mount); + } + +- if (parent != NULL) ++ if (find_existing) + { +- /* auto-show existing parent */ +- go_to_file = nautilus_find_existing_uri_in_hierarchy (parent); ++ /* Verify also the current location to prevent jumps to parent ++ * in case of autofs. ++ */ ++ go_to_file = nautilus_find_existing_uri_in_hierarchy (location); + } + else + { +@@ -1473,7 +1474,6 @@ viewed_file_changed_callback (NautilusFile *file, + + nautilus_window_slot_open_location_full (self, go_to_file, 0, NULL); + +- g_clear_object (&parent); + g_object_unref (go_to_file); + g_object_unref (location); + } +-- +2.39.2 + diff --git a/SOURCES/window-slot-dnd-Fix-data-retrieval-failure-path.patch b/SOURCES/window-slot-dnd-Fix-data-retrieval-failure-path.patch new file mode 100644 index 0000000..1f10870 --- /dev/null +++ b/SOURCES/window-slot-dnd-Fix-data-retrieval-failure-path.patch @@ -0,0 +1,50 @@ +From 51594105bc59f6197e2b176b6c132a3ac8a156c0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ant=C3=B3nio=20Fernandes?= +Date: Fri, 16 Jul 2021 22:47:40 +0100 +Subject: [PATCH] window-slot-dnd: Fix data retrieval failure path + +When data retrieval fails, ::drag-data-received is emitted with a +selection of negative length. + +We have been treating this case as invalid data, but we never actually +call gdk_drag_finish() which is mandatory after a drop. + +Instead, reset drag_info->have_data to FALSE in this case, and let +slot_proxy_handle_drop() handle the rest. +--- + src/nautilus-window-slot-dnd.c | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/src/nautilus-window-slot-dnd.c b/src/nautilus-window-slot-dnd.c +index 9509d2c97..ec0134e46 100644 +--- a/src/nautilus-window-slot-dnd.c ++++ b/src/nautilus-window-slot-dnd.c +@@ -472,17 +472,21 @@ slot_proxy_drag_data_received (GtkWidget *widget, + drag_info = user_data; + + g_assert (!drag_info->have_data); +- +- drag_info->have_data = TRUE; +- drag_info->info = info; + drag_info->waiting_for_data = FALSE; + + if (gtk_selection_data_get_length (data) < 0) + { +- drag_info->have_valid_data = FALSE; ++ /* Data retrieval failed. */ ++ if (drag_info->drop_occurred) ++ { ++ gtk_drag_finish (context, FALSE, FALSE, time); ++ } + return; + } + ++ drag_info->have_data = TRUE; ++ drag_info->info = info; ++ + if (info == NAUTILUS_ICON_DND_GNOME_ICON_LIST) + { + drag_info->data.selection_list = nautilus_drag_build_selection_list (data); +-- +2.41.0 + diff --git a/SOURCES/window-slot-dnd-Ignore-data-not-received-on-hover.patch b/SOURCES/window-slot-dnd-Ignore-data-not-received-on-hover.patch new file mode 100644 index 0000000..f88ebdf --- /dev/null +++ b/SOURCES/window-slot-dnd-Ignore-data-not-received-on-hover.patch @@ -0,0 +1,65 @@ +From 9f36eaa6f4e7757b7cdf41a54cfc9f03eaa0ce89 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ant=C3=B3nio=20Fernandes?= +Date: Fri, 16 Jul 2021 23:25:22 +0100 +Subject: [PATCH] window-slot-dnd: Ignore data not received on hover + +Sometimes, after having called gtk_drag_get_data() on ::drag-motion, we +only get the data after ::drag-leave. + +This is fine if the ::drag-leave is followed by ::drag-drop. Otherwise, +as ::drag-leave is responsible for cleanup, data arriving afterwards is +leaking into the next time content is dragged hover the widget, even if +the dragged content is no longer the same. + +Instead, keep track of the hover status and don't save data that's no +longer relevant. +--- + src/nautilus-window-slot-dnd.c | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/src/nautilus-window-slot-dnd.c b/src/nautilus-window-slot-dnd.c +index ec0134e46..772a8bb88 100644 +--- a/src/nautilus-window-slot-dnd.c ++++ b/src/nautilus-window-slot-dnd.c +@@ -36,6 +36,7 @@ typedef struct + gboolean have_data; + gboolean have_valid_data; + ++ gboolean is_hover; + gboolean drop_occurred; + + unsigned int info; +@@ -170,6 +171,8 @@ slot_proxy_drag_motion (GtkWidget *widget, + + drag_info = user_data; + ++ drag_info->is_hover = TRUE; ++ + action = 0; + valid_text_drag = FALSE; + valid_xds_drag = FALSE; +@@ -335,6 +338,7 @@ slot_proxy_drag_leave (GtkWidget *widget, + + drag_info = user_data; + ++ drag_info->is_hover = FALSE; + gtk_drag_unhighlight (widget); + drag_info_clear (drag_info); + } +@@ -474,6 +478,13 @@ slot_proxy_drag_data_received (GtkWidget *widget, + g_assert (!drag_info->have_data); + drag_info->waiting_for_data = FALSE; + ++ if (!drag_info->is_hover && !drag_info->drop_occurred) ++ { ++ /* Ignore data arriving after ::drag-leave, except if followed by ++ * ::drag-drop. */ ++ return; ++ } ++ + if (gtk_selection_data_get_length (data) < 0) + { + /* Data retrieval failed. */ +-- +2.41.0 + diff --git a/SOURCES/window-slot-dnd-Stop-queueing-data-requests.patch b/SOURCES/window-slot-dnd-Stop-queueing-data-requests.patch new file mode 100644 index 0000000..1a8b0d0 --- /dev/null +++ b/SOURCES/window-slot-dnd-Stop-queueing-data-requests.patch @@ -0,0 +1,76 @@ +From 095d88295e6a7a5fefdcb58e1483ae3926b8cb1c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ant=C3=B3nio=20Fernandes?= +Date: Fri, 16 Jul 2021 22:32:41 +0100 +Subject: [PATCH] window-slot-dnd: Stop queueing data requests + +Each time ::drag-motion is emitted, we call gtk_drag_get_data() if we +don't have data yet. + +If the drag source doesn't provide the data right away, we can end up +calling gtk_drag_get_data() multiple times. Later, when the data is +retrieved, we get multiple ::drag-data-received emissions. + +Not only is this wasteful, it also breaks an assertion, causing crashes. + +Instead, make sure gtk_drag_get_data() is called only once. + +Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/1535 +--- + src/nautilus-window-slot-dnd.c | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/src/nautilus-window-slot-dnd.c b/src/nautilus-window-slot-dnd.c +index 96c5d9cc8..9509d2c97 100644 +--- a/src/nautilus-window-slot-dnd.c ++++ b/src/nautilus-window-slot-dnd.c +@@ -32,6 +32,7 @@ + + typedef struct + { ++ gboolean waiting_for_data; + gboolean have_data; + gboolean have_valid_data; + +@@ -181,7 +182,7 @@ slot_proxy_drag_motion (GtkWidget *widget, + window = gtk_widget_get_toplevel (widget); + g_assert (NAUTILUS_IS_WINDOW (window)); + +- if (!drag_info->have_data) ++ if (!drag_info->have_data && !drag_info->waiting_for_data) + { + target = gtk_drag_dest_find_target (widget, context, NULL); + +@@ -190,6 +191,7 @@ slot_proxy_drag_motion (GtkWidget *widget, + goto out; + } + ++ drag_info->waiting_for_data = TRUE; + gtk_drag_get_data (widget, context, target, time); + } + +@@ -353,8 +355,12 @@ slot_proxy_drag_drop (GtkWidget *widget, + + drag_info->drop_occurred = TRUE; + +- target = gtk_drag_dest_find_target (widget, context, NULL); +- gtk_drag_get_data (widget, context, target, time); ++ if (!drag_info->waiting_for_data) ++ { ++ target = gtk_drag_dest_find_target (widget, context, NULL); ++ drag_info->waiting_for_data = TRUE; ++ gtk_drag_get_data (widget, context, target, time); ++ } + + return TRUE; + } +@@ -469,6 +475,7 @@ slot_proxy_drag_data_received (GtkWidget *widget, + + drag_info->have_data = TRUE; + drag_info->info = info; ++ drag_info->waiting_for_data = FALSE; + + if (gtk_selection_data_get_length (data) < 0) + { +-- +2.41.0 + diff --git a/SPECS/nautilus.spec b/SPECS/nautilus.spec index 135c2e7..9978145 100644 --- a/SPECS/nautilus.spec +++ b/SPECS/nautilus.spec @@ -6,7 +6,7 @@ Name: nautilus Version: 40.2 -Release: 11%{?dist} +Release: 15%{?dist} Summary: File manager for GNOME License: GPLv3+ @@ -39,6 +39,21 @@ Patch13: Revert-freedesktop-dbus-Defer-D-Bus-property-setting.patch Patch14: application-Export-FileManager1-iface-from-dbus_regi.patch Patch15: freedesktop-dbus-Try-to-own-the-name-until-after-exp.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=2184292 +Patch16: window-slot-Try-current-location-even-if-it-is-marke.patch +Patch17: window-slot-Force-reload-current-location-when-it-re.patch +Patch18: pathbar-Do-nothing-when-current-location-disappears.patch +Patch19: file-utilities-Prevent-passing-NULL-to-g_object_unre.patch +Patch20: window-slot-Fix-conditions-to-restore-selection-when.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=2120263 +Patch21: file-Generate-thumbnails-when-the-preview-icon-is-av.patch + +# https://issues.redhat.com/browse/RHEL-12820 +Patch: window-slot-dnd-Stop-queueing-data-requests.patch +Patch: window-slot-dnd-Fix-data-retrieval-failure-path.patch +Patch: window-slot-dnd-Ignore-data-not-received-on-hover.patch + BuildRequires: desktop-file-utils BuildRequires: gcc BuildRequires: gettext @@ -169,6 +184,18 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop %doc %{_datadir}/gtk-doc/html/libnautilus-extension/ %changelog +* Wed Oct 18 2023 Ondrej Holy - 40.2-15 +- Fix crashes when dragging from another application (RHEL-12820) + +* Wed Jun 14 2023 Ondrej Holy - 40.2-14 +- Force reload current location when it reappears (#2184292) + +* Thu Apr 06 2023 Ondrej Holy - 40.2-13 +- Generate thumbnails when the preview icon is available (#2120263) + +* Wed Apr 05 2023 Ondrej Holy - 40.2-12 +- Try current location even if it is marked as gone (#2184292) + * Thu Feb 23 2023 Ondrej Holy - 40.2-11 - Try to own the name until after exporting skeleton (#2162302)