diff --git a/nautilus-2.26.1-dnd-not-recurse.patch b/nautilus-2.26.1-dnd-not-recurse.patch new file mode 100644 index 0000000..9d89c75 --- /dev/null +++ b/nautilus-2.26.1-dnd-not-recurse.patch @@ -0,0 +1,30 @@ +diff -up nautilus-2.24.2/libnautilus-private/nautilus-dnd.c.dnd-recurse nautilus-2.24.2/libnautilus-private/nautilus-dnd.c +--- nautilus-2.24.2/libnautilus-private/nautilus-dnd.c.dnd-recurse 2008-10-06 19:22:21.000000000 +0200 ++++ nautilus-2.24.2/libnautilus-private/nautilus-dnd.c 2009-04-06 13:44:43.000000000 +0200 +@@ -419,7 +419,7 @@ nautilus_drag_default_drop_action_for_ic + gboolean same_fs; + gboolean target_is_source_parent; + const char *dropped_uri; +- GFile *target, *dropped; ++ GFile *target, *dropped, *dropped_directory; + GdkDragAction actions; + NautilusFile *dropped_file, *target_file; + +@@ -501,7 +501,16 @@ nautilus_drag_default_drop_action_for_ic + + /* Compare the first dropped uri with the target uri for same fs match. */ + dropped = g_file_new_for_uri (dropped_uri); +- target_is_source_parent = g_file_has_prefix (dropped, target); ++ dropped_directory = g_file_get_parent (dropped); ++ target_is_source_parent = FALSE; ++ if (dropped_directory != NULL) { ++ /* If the dropped file is already in the same directory but ++ is in another filesystem we still want to move, not copy ++ as this is then just a move of a mountpoint to another ++ position in the dir */ ++ target_is_source_parent = g_file_equal (dropped_directory, target); ++ g_object_unref (dropped_directory); ++ } + + if (same_fs || target_is_source_parent || + g_file_has_uri_scheme (dropped, "trash")) { diff --git a/nautilus.spec b/nautilus.spec index 2ef9e1f..2ff7d59 100644 --- a/nautilus.spec +++ b/nautilus.spec @@ -19,7 +19,7 @@ Name: nautilus Summary: Nautilus is a file manager for GNOME Version: 2.24.2 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: User Interface/Desktops Source: http://download.gnome.org/sources/%{name}/2.24/%{name}-%{version}.tar.bz2 @@ -102,6 +102,10 @@ Patch17: nautilus-filetype-symlink-fix.patch # http://bugzilla.gnome.org/show_bug.cgi?id=524485 Patch18: nautilus_new_windows_after_mount.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=456515 +# Dragging Files via NFS share moves instead of copy +Patch19: nautilus-2.26.1-dnd-not-recurse.patch + %description Nautilus integrates access to files, applications, media, Internet-based resources and the Web. Nautilus delivers a dynamic and @@ -141,6 +145,7 @@ for writing nautilus extensions. %patch15 -p0 -b .xds %patch17 -p0 -b .symlink %patch18 -p0 -b .new-windows +%patch19 -p1 -b .dnd-recurse %build @@ -269,6 +274,9 @@ fi %changelog +* Mon Apr 6 2009 Tomas Bzatek - 2.24.2-3 +- Fix dragging files via NFS moves instead of copy (#456515) + * Fri Dec 5 2008 Tomas Bzatek - 2.24.2-2 - Properly open new windows after long mount operation