summaryrefslogtreecommitdiff
path: root/src/input_handler.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2014-09-23 13:45:18 +0100
committerMaxime Coste <frrrwww@gmail.com>2014-09-23 13:45:18 +0100
commit4c4d3cdd382438283a4774ef5d4cffb1d39181cf (patch)
treee5c5ab8943d8f0296a0880756aa8cc2bd6915675 /src/input_handler.cc
parent858132e7719cba2fcca4e3058ec37d86cdce132e (diff)
Add support for mapping keys in goto/view commands
Diffstat (limited to 'src/input_handler.cc')
-rw-r--r--src/input_handler.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/input_handler.cc b/src/input_handler.cc
index b0aff794..d8c1e373 100644
--- a/src/input_handler.cc
+++ b/src/input_handler.cc
@@ -730,8 +730,8 @@ std::unordered_map<String, std::vector<String>> Prompt::ms_history;
class NextKey : public InputMode
{
public:
- NextKey(InputHandler& input_handler, KeyCallback callback)
- : InputMode(input_handler), m_callback(callback) {}
+ NextKey(InputHandler& input_handler, KeymapMode keymap_mode, KeyCallback callback)
+ : InputMode(input_handler), m_keymap_mode(keymap_mode), m_callback(callback) {}
void on_key(Key key) override
{
@@ -744,10 +744,11 @@ public:
return { "enter key", Face(Colors::Yellow) };
}
- KeymapMode keymap_mode() const override { return KeymapMode::None; }
+ KeymapMode keymap_mode() const override { return m_keymap_mode; }
private:
KeyCallback m_callback;
+ KeymapMode m_keymap_mode;
};
class Insert : public InputMode
@@ -1078,9 +1079,9 @@ void InputHandler::menu(memoryview<String> choices,
change_input_mode(new InputModes::Menu(*this, choices, callback));
}
-void InputHandler::on_next_key(KeyCallback callback)
+void InputHandler::on_next_key(KeymapMode keymap_mode, KeyCallback callback)
{
- change_input_mode(new InputModes::NextKey(*this, callback));
+ change_input_mode(new InputModes::NextKey(*this, keymap_mode, callback));
}
static bool is_valid(Key key)