Bugzilla – Attachment 49114 Details for
Bug 114914
cannot empty trash can for removable media
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
IDP Log In
|
Forgot Password
[patch]
Another update for nautilus-114914-trash-unmount-removable-volume.diff
nautilus-114914-trash-unmount-removable-volume.diff (text/plain), 2.88 KB, created by
Federico Mena Quintero
on 2005-09-07 20:44:33 UTC
(
hide
)
Description:
Another update for nautilus-114914-trash-unmount-removable-volume.diff
Filename:
MIME Type:
Creator:
Federico Mena Quintero
Created:
2005-09-07 20:44:33 UTC
Size:
2.88 KB
patch
obsolete
>Index: libnautilus-private/nautilus-merged-directory.c >=================================================================== >RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-merged-directory.c,v >retrieving revision 1.25 >diff -u -r1.25 nautilus-merged-directory.c >--- libnautilus-private/nautilus-merged-directory.c 11 Oct 2004 11:49:00 -0000 1.25 >+++ libnautilus-private/nautilus-merged-directory.c 7 Sep 2005 20:14:13 -0000 >@@ -27,6 +27,7 @@ > #include "nautilus-merged-directory.h" > > #include "nautilus-directory-private.h" >+#include "nautilus-directory-notify.h" > #include "nautilus-file.h" > #include <eel/eel-glib-extensions.h> > #include <gtk/gtksignal.h> >@@ -540,12 +541,40 @@ > } > > static void >+real_directory_notify_files_removed (NautilusDirectory *real_directory) >+{ >+ GList *files, *l; >+ >+ files = nautilus_directory_get_file_list (real_directory); >+ >+ for (l = files; l; l = l->next) { >+ NautilusFile *file; >+ char *uri; >+ >+ file = NAUTILUS_FILE (l->data); >+ uri = nautilus_file_get_uri (file); >+ nautilus_file_unref (file); >+ >+ l->data = uri; >+ } >+ >+ if (files) { >+ nautilus_directory_notify_files_removed (files); >+ } >+ >+ eel_g_list_free_deep (files); >+} >+ >+static void > merged_remove_real_directory (NautilusMergedDirectory *merged, > NautilusDirectory *real_directory) > { > g_return_if_fail (NAUTILUS_IS_MERGED_DIRECTORY (merged)); > g_return_if_fail (NAUTILUS_IS_DIRECTORY (real_directory)); > g_return_if_fail (g_list_find (merged->details->directories, real_directory) != NULL); >+ >+ /* Since the real directory will be going away, act as if files were removed */ >+ real_directory_notify_files_removed (real_directory); > > /* Remove this directory from callbacks and monitors. */ > eel_g_hash_table_safe_for_each (merged->details->callbacks, >Index: libnautilus-private/nautilus-trash-directory.c >=================================================================== >RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-trash-directory.c,v >retrieving revision 1.37 >diff -u -r1.37 nautilus-trash-directory.c >--- libnautilus-private/nautilus-trash-directory.c 13 Dec 2003 13:55:56 -0000 1.37 >+++ libnautilus-private/nautilus-trash-directory.c 7 Sep 2005 20:14:13 -0000 >@@ -265,6 +265,14 @@ > } > > static void >+volume_unmounted_callback (GnomeVFSVolumeMonitor *monitor, >+ GnomeVFSVolume *volume, >+ NautilusTrashDirectory *trash) >+{ >+ remove_volume (trash, volume); >+} >+ >+static void > nautilus_trash_directory_instance_init (NautilusTrashDirectory *trash) > { > GnomeVFSVolumeMonitor *volume_monitor; >@@ -278,6 +286,8 @@ > G_CALLBACK (volume_mounted_callback), trash, 0); > g_signal_connect_object (volume_monitor, "volume_pre_unmount", > G_CALLBACK (volume_unmount_started_callback), trash, 0); >+ g_signal_connect_object (volume_monitor, "volume_unmounted", >+ G_CALLBACK (volume_unmounted_callback), trash, 0); > } > > /* Finish initializing a new NautilusTrashDirectory. We have to do the
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
|
Diff
Attachments on
bug 114914
:
48866
|
49006
| 49114