summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorsabetts <sabetts>2003-09-02 17:33:58 +0000
committersabetts <sabetts>2003-09-02 17:33:58 +0000
commit2a16e44fccc006966c0e282ce0ba4a808e15e776 (patch)
tree9f8017f42396d028466851c76f6eb72a7cc305b9 /src/main.c
parent8122f90155b54a948bc062d496de373f891a43f6 (diff)
downloadratpoison-2a16e44fccc006966c0e282ce0ba4a808e15e776.zip
* src/main.c (show_welcome_message): search the root keymap for
the help binding. (clean_up): call free_keymaps and not free_keybindings. * src/events.c (handle_key): call cmd_readkey to hand actually reading a key from the keyboard. * src/data.h (typedef rp_keymap): new typedef (struct rp_keymap): new struct * src/conf.h (ROOT_KEYMAP): new define * src/actions.h (cmd_readkey): new prototype (cmd_newkmap): likewise (cmd_delkmap): likewise (cmd_definekey): likewise (find_keymap): likewise (keymap_free): likewise (free_keymaps): likewise * src/actions.c (rp_keymaps): new global. remove globals key_actions, key_actions_last, and key_actions_table_size. (user_commands): remove bind and unbind. New commands readkey, newkmap, delkmap, and definekey. (find_keybinding_by_action): take a rp_keymap argument and operate on it. All callers updated. (find_keybinding): likewise (find_command_by_keydesc): likewise (resolve_command_from_keydesc): likewise (add_keybinding): likewise (remove_keybinding): likewise (cmd_definekey): new function (cmd_newkmap): likewise (cmd_delkmap): likewise (keymap_new): likewise (keymap_free): likewise (find_keymap): likewise (free_keymaps): likewise (cmd_bind): remove function. Prototype removed. (cmd_unbind): likewise (initialize_default_keybindings): add aliases for unbind and bind. (ungrab_rat): moved from events.c (grab_rat): likewise
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main.c b/src/main.c
index 33433ee..d944292 100644
--- a/src/main.c
+++ b/src/main.c
@@ -399,11 +399,14 @@ show_welcome_message ()
{
rp_action *help_action;
char *prefix, *help;
+ rp_keymap *map;
prefix = keysym_to_string (prefix_key.sym, prefix_key.state);
+ map = find_keymap (ROOT_KEYMAP);
+
/* Find the help key binding. */
- help_action = find_keybinding_by_action ("help");
+ help_action = find_keybinding_by_action ("help " ROOT_KEYMAP, map);
if (help_action)
help = keysym_to_string (help_action->key, help_action->state);
else
@@ -770,7 +773,7 @@ clean_up ()
history_save ();
- free_keybindings ();
+ free_keymaps ();
free_aliases ();
free_bar ();
free_groups ();