diff options
author | Alexander Larsson <alexl@redhat.com> | 2009-12-15 09:56:56 +0100 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2009-12-15 09:56:56 +0100 |
commit | 9c7c2c9d2cc0a8648abf2dbc851e9efec3e3df1c (patch) | |
tree | cbe4eee9eb1cbff4b41a8b878e86000f4789c8eb | |
parent | d87cf7e75c37d139631807bc22c07ba879f8218f (diff) | |
download | nautilus-9c7c2c9d2cc0a8648abf2dbc851e9efec3e3df1c.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.
-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 09d4ff82b..21e1b55cb 100644 --- a/src/file-manager/fm-directory-view.c +++ b/src/file-manager/fm-directory-view.c @@ -999,8 +999,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 @@ -1072,11 +1080,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 |