mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Only add the accelerator key to the menu item once
This commit is contained in:
parent
85f462feb5
commit
0098b047d5
@ -371,15 +371,20 @@ add_accel_for_menu_lookup (GtkWidget *widget, gpointer user_data)
|
|||||||
|
|
||||||
if (accel_label)
|
if (accel_label)
|
||||||
{
|
{
|
||||||
|
gboolean added = GPOINTER_TO_INT(g_object_get_data (G_OBJECT(menuItem),
|
||||||
|
"accel-added"));
|
||||||
guint key;
|
guint key;
|
||||||
GdkModifierType mods;
|
GdkModifierType mods;
|
||||||
|
|
||||||
gtk_accel_label_get_accel (GTK_ACCEL_LABEL(accel_label), &key, &mods);
|
gtk_accel_label_get_accel (GTK_ACCEL_LABEL(accel_label), &key, &mods);
|
||||||
|
|
||||||
if (key > 0)
|
if (key > 0 && !added)
|
||||||
|
{
|
||||||
|
g_object_set_data (G_OBJECT(menuItem), "accel-added", GINT_TO_POINTER(1));
|
||||||
gtk_widget_add_accelerator (GTK_WIDGET(widget), "activate",
|
gtk_widget_add_accelerator (GTK_WIDGET(widget), "activate",
|
||||||
GTK_ACCEL_GROUP(user_data),
|
GTK_ACCEL_GROUP(user_data),
|
||||||
key, mods, GTK_ACCEL_VISIBLE);
|
key, mods, GTK_ACCEL_VISIBLE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (GTK_IS_CONTAINER(subMenu))
|
if (GTK_IS_CONTAINER(subMenu))
|
||||||
gtk_container_foreach (GTK_CONTAINER(subMenu),
|
gtk_container_foreach (GTK_CONTAINER(subMenu),
|
||||||
|
Loading…
Reference in New Issue
Block a user