From 8b1078e51029850ea4610cee75a8c81a8e5afbba Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Thu, 16 Mar 2017 23:40:38 +0000 Subject: Use a HashMap to store the normal mode keymap --- src/input_handler.cc | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/input_handler.cc') diff --git a/src/input_handler.cc b/src/input_handler.cc index 4f921a8a..b25e4174 100644 --- a/src/input_handler.cc +++ b/src/input_handler.cc @@ -258,21 +258,19 @@ public: context().client().info_hide(); do_restore_hooks = true; - auto it = std::lower_bound(keymap.begin(), keymap.end(), key, - [](const NormalCmdDesc& lhs, const Key& rhs) - { return lhs.key < rhs; }); + auto it = keymap.find(key); if (it != keymap.end() and it->key == key) { auto autoinfo = context().options()["autoinfo"].get(); if (autoinfo & AutoInfo::Normal and context().has_client()) - context().client().info_show(key_to_str(key), it->docstring.str(), + context().client().info_show(key_to_str(key), it->value.docstring.str(), {}, InfoStyle::Prompt); // reset m_params now to be reentrant NormalParams params = m_params; m_params = { 0, 0 }; - it->func(context(), params); + it->value.func(context(), params); } } -- cgit v1.2.3