aboutsummaryrefslogtreecommitdiffstats
path: root/src/keyboard.c
diff options
context:
space:
mode:
authorStefan Monnier2009-09-10 16:19:52 +0000
committerStefan Monnier2009-09-10 16:19:52 +0000
commita88a5372fd9b93a3f8e3a3264de867f0ee0590cd (patch)
tree8c62d5d4b38e1227ea0f54bc193d3328f6be8a89 /src/keyboard.c
parenta126db16fa29e84987cf4e37434eeaebc43d72bb (diff)
downloademacs-a88a5372fd9b93a3f8e3a3264de867f0ee0590cd.tar.gz
emacs-a88a5372fd9b93a3f8e3a3264de867f0ee0590cd.zip
* keymap.c (where_is_internal_data): Make noindirect a boolean.
(where_is_internal): Strip it down to only traverse the keymaps. Move the cache handling from Fwhere_is_internal to here. (Fwhere_is_internal): Move the handling of remapping and the choice of the best binding from where_is_internal to here. Unify the cached/noncached paths, so remapping is also handled correctly when the cache is used, and so the cache can be used to speed up remap-handling when applicable. Give preference to non-remapped bindings. * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer non-remapped bindings. * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle command remapping.
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
index dfb625675a4..04af3585897 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -8158,11 +8158,7 @@ parse_menu_item (item, notreal, inmenubar)
8158 && SYMBOLP (XSYMBOL (def)->function) 8158 && SYMBOLP (XSYMBOL (def)->function)
8159 && ! NILP (Fget (def, Qmenu_alias))) 8159 && ! NILP (Fget (def, Qmenu_alias)))
8160 def = XSYMBOL (def)->function; 8160 def = XSYMBOL (def)->function;
8161 tem = Fwhere_is_internal (def, Qnil, Qt, Qnil, Qt); 8161 tem = Fwhere_is_internal (def, Qnil, Qt, Qnil, Qnil);
8162
8163 /* Don't display remap bindings.*/
8164 if (VECTORP (tem) && ASIZE (tem) > 0 && EQ (AREF (tem, 0), Qremap))
8165 tem = Qnil;
8166 8162
8167 XSETCAR (cachelist, tem); 8163 XSETCAR (cachelist, tem);
8168 if (NILP (tem)) 8164 if (NILP (tem))