diff --git a/src/modules/conf_keybindings/e_int_config_keybindings.c b/src/modules/conf_keybindings/e_int_config_keybindings.c index f4b0f2189..5408c5994 100644 --- a/src/modules/conf_keybindings/e_int_config_keybindings.c +++ b/src/modules/conf_keybindings/e_int_config_keybindings.c @@ -1017,7 +1017,7 @@ _grab_key_down_cb(void *data, int type, void *event) if (cfdata->locals.add) { found = 0; - for (l = cfdata->binding.key; l && !found; l = l->next) + for (l = cfdata->binding.key, n = 0; l && !found; l = l->next, n++) { bi = l->data; if (bi->modifiers == mod && !strcmp(bi->key, ev->keyname)) @@ -1032,7 +1032,7 @@ _grab_key_down_cb(void *data, int type, void *event) sscanf(cfdata->locals.cur, "k%d", &n); bi = eina_list_nth(cfdata->binding.key, n); - for (l = cfdata->binding.key; l && !found; l = l->next) + for (l = cfdata->binding.key, n = 0; l && !found; l = l->next, n++) { bi2 = l->data; if (bi == bi2) continue; @@ -1131,7 +1131,12 @@ _grab_key_down_cb(void *data, int type, void *event) " is already used by
" "%s action.
" "Please choose another binding key sequence."), - label ? label : _("Unknown")); + label ? label : _("Unknown")); + + + e_widget_ilist_nth_show(cfdata->gui.o_binding_list, n-1, 1); + e_widget_ilist_selected_set(cfdata->gui.o_binding_list, n-1); + } _grab_wnd_hide(cfdata); }