- 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 Name: nautilus
Summary: File manager for GNOME Summary: File manager for GNOME
Version: 2.25.1 Version: 2.25.1
Release: 3%{?dist} Release: 4%{?dist}
License: GPLv2+ License: GPLv2+
Group: User Interface/Desktops Group: User Interface/Desktops
Source: http://download.gnome.org/sources/%{name}/2.24/%{name}-%{version}.tar.bz2 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 # http://bugzilla.gnome.org/show_bug.cgi?id=519743
Patch17: nautilus-filetype-symlink-fix.patch 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 %description
Nautilus is the file manager and graphical shell for the GNOME desktop 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. 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 %patch10 -p1 -b .gvfs-desktop-key
%patch15 -p1 -b .xds %patch15 -p1 -b .xds
%patch17 -p0 -b .symlink %patch17 -p0 -b .symlink
%patch18 -p0 -b .new-windows
%patch19 -p0 -b .mountop
%build %build
@ -266,6 +273,10 @@ fi
%changelog %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 * Thu Dec 4 2008 Tomas Bzatek <tbzatek@redhat.com> - 2.25.1-3
- Fix BuildRequires - 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,