summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Lortie <desrt@desrt.ca>2009-08-22 14:32:36 -0400
committerRyan Lortie <desrt@desrt.ca>2009-08-24 10:06:40 -0400
commitd8337a4b7969b43bf5712cd5e85dc5f936ed5044 (patch)
tree6d82248e9aadbd8787136a4874a1ab37775c14d1
parentb9cd9a5810e044c9351d2408186fb135f4452635 (diff)
downloadnautilus-d8337a4b7969b43bf5712cd5e85dc5f936ed5044.tar.gz
Cancel audio preview when deleting the file
Fixes #137500.
-rw-r--r--src/file-manager/fm-icon-view.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c
index 2fa23360d..309e5cf14 100644
--- a/src/file-manager/fm-icon-view.c
+++ b/src/file-manager/fm-icon-view.c
@@ -470,6 +470,8 @@ should_show_file_on_screen (FMDirectoryView *view, NautilusFile *file)
static void
fm_icon_view_remove_file (FMDirectoryView *view, NautilusFile *file, NautilusDirectory *directory)
{
+ FMIconView *icon_view;
+
/* This used to assert that 'directory == fm_directory_view_get_model (view)', but that
* resulted in a lot of crash reports (bug #352592). I don't see how that trace happens.
* It seems that somehow we get a files_changed event sent to the view from a directory
@@ -491,8 +493,14 @@ fm_icon_view_remove_file (FMDirectoryView *view, NautilusFile *file, NautilusDir
g_free (model_uri);
}
- if (nautilus_icon_container_remove (get_icon_container (FM_ICON_VIEW (view)),
+ icon_view = FM_ICON_VIEW (view);
+
+ if (nautilus_icon_container_remove (get_icon_container (icon_view),
NAUTILUS_ICON_CONTAINER_ICON_DATA (file))) {
+ if (file == icon_view->details->audio_preview_file) {
+ preview_audio (icon_view, NULL, FALSE);
+ }
+
nautilus_file_unref (file);
}
}