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 20:16:52 +0200 |
commit | 2731de0699bd882cb0afc1ef93a5f763ca806b16 (patch) | |
tree | 0f058735f091ebe68bd99766797ad65d6bfb3a81 | |
parent | 4cffc1f2590f0196143a8823e8d40266a2a891e7 (diff) | |
download | nautilus-2731de0699bd882cb0afc1ef93a5f763ca806b16.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
-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 591d87b52..c28441435 100644 --- a/src/nautilus-files-view.c +++ b/src/nautilus-files-view.c @@ -5528,6 +5528,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); @@ -5549,7 +5550,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) @@ -5670,7 +5672,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; |