diff options
author | Daniel Pauls <daniel1708.de+git@gmail.com> | 2019-05-05 13:26:25 +0200 |
---|---|---|
committer | Ernestas Kulik <ekulik@redhat.com> | 2019-05-05 19:55:33 +0200 |
commit | 76d3107809cd3484eb7fde5b1f6d63f21d5309b9 (patch) | |
tree | 4cbff548a2ba4cc21f571881c60a2518c6b61acc /src/nautilus-files-view.c | |
parent | 61a26927c90dcf4c80d37974ad9ca384004a8af9 (diff) | |
download | nautilus-76d3107809cd3484eb7fde5b1f6d63f21d5309b9.tar.gz |
files-view: Fix unintended mnemonics in context menu
If a template has an underscore in its name, it will be interpreted as a
mnemonic shortcut, which is not desired for these. Escaping underscores
makes the labels appear as they are.
Related: https://bugzilla.gnome.org/show_bug.cgi?id=783249
Fixes https://gitlab.gnome.org/GNOME/nautilus/issues/995
Diffstat (limited to 'src/nautilus-files-view.c')
-rw-r--r-- | src/nautilus-files-view.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c index 0dad2fe96..fc7882374 100644 --- a/src/nautilus-files-view.c +++ b/src/nautilus-files-view.c @@ -5562,6 +5562,7 @@ add_template_to_templates_menus (NautilusFilesView *view, char *action_name, *detailed_action_name; CreateTemplateParameters *parameters; GAction *action; + g_autofree char *label = NULL; GMenuItem *menu_item; priv = nautilus_files_view_get_instance_private (view); @@ -5583,7 +5584,8 @@ add_template_to_templates_menus (NautilusFilesView *view, g_action_map_add_action (G_ACTION_MAP (priv->view_action_group), action); detailed_action_name = g_strconcat ("view.", action_name, NULL); - menu_item = g_menu_item_new (name, detailed_action_name); + label = eel_str_double_underscores (name); + menu_item = g_menu_item_new (label, detailed_action_name); mimetype_icon = get_menu_icon_for_file (file, GTK_WIDGET (view)); if (mimetype_icon != NULL) @@ -5704,7 +5706,12 @@ update_directory_in_templates_menu (NautilusFilesView *view, if (children_menu != NULL) { - menu_item = g_menu_item_new_submenu (nautilus_file_get_display_name (file), + g_autofree char *display_name = NULL; + g_autofree char *label = NULL; + + display_name = nautilus_file_get_display_name (file); + label = eel_str_double_underscores (display_name); + menu_item = g_menu_item_new_submenu (label, G_MENU_MODEL (children_menu)); g_menu_append_item (menu, menu_item); any_templates = TRUE; |