- Properly open new windows after long mount operation

- Fix callback connection to the GtkMountOperation dialog
This commit is contained in:
Tomas Bzatek 2008-12-05 11:55:20 +00:00
parent 8e54c59327
commit 60c2440b30
3 changed files with 59 additions and 1 deletions

View File

@ -20,7 +20,7 @@
Name: nautilus
Summary: File manager for GNOME
Version: 2.25.1
Release: 3%{?dist}
Release: 4%{?dist}
License: GPLv2+
Group: User Interface/Desktops
Source: http://download.gnome.org/sources/%{name}/2.24/%{name}-%{version}.tar.bz2
@ -101,6 +101,11 @@ Patch15: nautilus-2.22.0-treeview-xds-dnd-2.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=519743
Patch17: nautilus-filetype-symlink-fix.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=524485
Patch18: nautilus_new_windows_after_mount.patch
Patch19: nautilus_gtk_mount_operation_signal.patch
%description
Nautilus is the file manager and graphical shell for the GNOME desktop
that makes it easy to manage your files and the rest of your system.
@ -139,6 +144,8 @@ for developing nautilus extensions.
%patch10 -p1 -b .gvfs-desktop-key
%patch15 -p1 -b .xds
%patch17 -p0 -b .symlink
%patch18 -p0 -b .new-windows
%patch19 -p0 -b .mountop
%build
@ -266,6 +273,10 @@ fi
%changelog
* Fri Dec 5 2008 Tomas Bzatek <tbzatek@redhat.com> - 2.25.1-4
- Properly open new windows after long mount operation
- Fix callback connection to the GtkMountOperation dialog
* Thu Dec 4 2008 Tomas Bzatek <tbzatek@redhat.com> - 2.25.1-3
- Fix BuildRequires

View File

@ -0,0 +1,20 @@
Index: libnautilus-private/nautilus-mime-actions.c
===================================================================
--- libnautilus-private/nautilus-mime-actions.c (revision 14785)
+++ libnautilus-private/nautilus-mime-actions.c (working copy)
@@ -1331,12 +1331,13 @@
if (parameters->not_mounted != NULL) {
file = parameters->not_mounted->data;
mount_op = gtk_mount_operation_new (parameters->parent_window);
- g_signal_connect_object (mount_op, "notify::is-showing",
- G_CALLBACK (activate_mount_op_active), parameters, 0);
+ g_signal_connect (mount_op, "notify::is-showing",
+ G_CALLBACK (activate_mount_op_active), parameters);
location = nautilus_file_get_location (file);
g_file_mount_enclosing_volume (location, 0, mount_op, parameters->cancellable,
activation_mount_not_mounted_callback, parameters);
g_object_unref (location);
+ /* unref mount_op here - g_file_mount_enclosing_volume() does ref for itself */
g_object_unref (mount_op);
return;
}

View File

@ -0,0 +1,27 @@
Index: libnautilus-private/nautilus-mime-actions.c
===================================================================
--- libnautilus-private/nautilus-mime-actions.c (revision 14785)
+++ libnautilus-private/nautilus-mime-actions.c (working copy)
@@ -1327,6 +1327,7 @@
NautilusFile *file;
GFile *location;
GMountOperation *mount_op;
+ GList *l, *next;
if (parameters->not_mounted != NULL) {
file = parameters->not_mounted->data;
@@ -1348,6 +1349,14 @@
return;
}
+ /* once the mount is finished, refresh all attributes */
+ /* - fixes new windows not appearing after successful mount */
+ for (l = parameters->files; l != NULL; l = next) {
+ file = NAUTILUS_FILE (l->data);
+ next = l->next;
+ nautilus_file_invalidate_all_attributes (file);
+ }
+
nautilus_file_list_call_when_ready
(parameters->files,
nautilus_mime_actions_get_required_file_attributes () | NAUTILUS_FILE_ATTRIBUTE_LINK_INFO,