mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 10:50:10 +00:00
shortcuts: Try harder to disambiguate search items
I noticed that some of the gestures did not show up in the search results in the builder example in gtk3-demo, because they share the same title and don't have an accelerator to disambiguate. Include the shortcut type to handle this case.
This commit is contained in:
parent
815cc23c4c
commit
8a2812217b
@ -197,6 +197,9 @@ gtk_shortcuts_window_add_search_item (GtkWidget *child, gpointer data)
|
||||
|
||||
if (GTK_IS_SHORTCUTS_SHORTCUT (child))
|
||||
{
|
||||
GEnumClass *class;
|
||||
GEnumValue *value;
|
||||
|
||||
g_object_get (child,
|
||||
"accelerator", &accelerator,
|
||||
"title", &title,
|
||||
@ -207,7 +210,13 @@ gtk_shortcuts_window_add_search_item (GtkWidget *child, gpointer data)
|
||||
"action-name", &action_name,
|
||||
NULL);
|
||||
|
||||
hash_key = g_strdup_printf ("%s-%s", title, accelerator);
|
||||
class = G_ENUM_CLASS (g_type_class_ref (GTK_TYPE_SHORTCUT_TYPE));
|
||||
value = g_enum_get_value (class, shortcut_type);
|
||||
|
||||
hash_key = g_strdup_printf ("%s-%s-%s", title, value->value_nick, accelerator);
|
||||
|
||||
g_type_class_unref (class);
|
||||
|
||||
if (g_hash_table_contains (priv->search_items_hash, hash_key))
|
||||
{
|
||||
g_free (hash_key);
|
||||
|
Loading…
Reference in New Issue
Block a user