diff options
author | Codeboybebop <codeboy.bebop@gmail.com> | 2022-07-16 19:27:19 +0000 |
---|---|---|
committer | António Fernandes <antoniojpfernandes@gmail.com> | 2022-07-16 19:27:19 +0000 |
commit | 4677dbe104928f1d82305c2aa08604e4fa72eb80 (patch) | |
tree | cd6da767930798073c75675df1237ee06561e64c | |
parent | 2f1e0d25f68eda6fdab3f3da0032f6ac19237e7f (diff) | |
download | nautilus-4677dbe104928f1d82305c2aa08604e4fa72eb80.tar.gz |
nautilus-files-view.c: separated actions for creating a link
Single action for creating a link can be either enabled and visible or disabled and invisible. Creating separate action allows hiding entry in context menu without disabling a shortcut.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/2315
-rw-r--r-- | src/nautilus-files-view.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c index 5c8729c30..d060f3915 100644 --- a/src/nautilus-files-view.c +++ b/src/nautilus-files-view.c @@ -6917,6 +6917,7 @@ const GActionEntry view_entries[] = { "copy-current-location", action_copy_current_location }, { "paste_accel", action_paste_files_accel }, { "create-link", action_create_links }, + { "create-link-shortcut", action_create_links }, { "new-document" }, /* Selection menu */ { "scripts" }, @@ -6931,6 +6932,7 @@ const GActionEntry view_entries[] = { "cut", action_cut}, { "copy", action_copy}, { "create-link-in-place", action_create_links_in_place }, + { "create-link-in-place-shortcut", action_create_links_in_place }, { "move-to", action_move_to}, { "copy-to", action_copy_to}, { "move-to-trash", action_move_to_trash}, @@ -7044,6 +7046,11 @@ update_actions_clipboard_contents_received (GObject *source_object, g_simple_action_set_enabled (G_SIMPLE_ACTION (action), can_link_from_copied_files && settings_show_create_link); + action = g_action_map_lookup_action (G_ACTION_MAP (priv->view_action_group), + "create-link-shortcut"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), + can_link_from_copied_files && + !settings_show_create_link); } static void @@ -7519,6 +7526,12 @@ real_update_actions_state (NautilusFilesView *view) can_create_files && settings_show_create_link); action = g_action_map_lookup_action (G_ACTION_MAP (view_action_group), + "create-link-in-place-shortcut"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), + can_copy_files && + can_create_files && + !settings_show_create_link); + action = g_action_map_lookup_action (G_ACTION_MAP (view_action_group), "copy-to"); g_simple_action_set_enabled (G_SIMPLE_ACTION (action), can_copy_files); @@ -9364,7 +9377,9 @@ nautilus_files_view_class_init (NautilusFilesViewClass *klass) gtk_widget_class_add_binding_action (widget_class, GDK_KEY_i, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "view.invert-selection", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_space, 0, "view.preview-selection", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_m, GDK_CONTROL_MASK, "view.create-link", NULL); + gtk_widget_class_add_binding_action (widget_class, GDK_KEY_m, GDK_CONTROL_MASK, "view.create-link-shortcut", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_m, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "view.create-link-in-place", NULL); + gtk_widget_class_add_binding_action (widget_class, GDK_KEY_m, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "view.create-link-in-place-shortcut", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_Return, GDK_CONTROL_MASK, "view.open-item-new-tab", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_Return, GDK_SHIFT_MASK, "view.open-item-new-window", NULL); gtk_widget_class_add_binding_action (widget_class, GDK_KEY_o, GDK_CONTROL_MASK | GDK_ALT_MASK, "view.open-item-location", NULL); |