diff options
author | Alexander Larsson <alexl@redhat.com> | 2009-12-15 09:56:56 +0100 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2009-12-15 10:10:59 +0100 |
commit | a799568dc744c6d5d715f3c05010506bb61583aa (patch) | |
tree | 4b479cc80b89fb39cc20a89a52e4a2f67671d621 | |
parent | 00516ab6c30430a83136a0092bfd2d7bf729b4d9 (diff) | |
download | nautilus-a799568dc744c6d5d715f3c05010506bb61583aa.tar.gz |
Make trash keybindings only work if the action is sensitive
This fixes https://bugzilla.gnome.org/show_bug.cgi?id=603413 in
a way not causing regressions.
(cherry picked from commit 9c7c2c9d2cc0a8648abf2dbc851e9efec3e3df1c)
-rw-r--r-- | src/file-manager/fm-directory-view.c | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c index 696a86c6f..a3e4b2611 100644 --- a/src/file-manager/fm-directory-view.c +++ b/src/file-manager/fm-directory-view.c @@ -972,8 +972,16 @@ trash_or_delete_selected_files (FMDirectoryView *view) static gboolean real_trash (FMDirectoryView *view) { - trash_or_delete_selected_files (view); - return TRUE; + GtkAction *action; + + action = gtk_action_group_get_action (view->details->dir_action_group, + FM_ACTION_TRASH); + if (gtk_action_get_sensitive (action) && + gtk_action_get_visible (action)) { + trash_or_delete_selected_files (view); + return TRUE; + } + return FALSE; } static void @@ -1034,11 +1042,16 @@ action_restore_from_trash_callback (GtkAction *action, static gboolean real_delete (FMDirectoryView *view) { - if (!show_delete_command_auto_value) { - return FALSE; + GtkAction *action; + + action = gtk_action_group_get_action (view->details->dir_action_group, + FM_ACTION_DELETE); + if (gtk_action_get_sensitive (action) && + gtk_action_get_visible (action)) { + delete_selected_files (view); + return TRUE; } - delete_selected_files (view); - return TRUE; + return FALSE; } static void |