diff options
| author | Akshay Nair <phenax5@gmail.com> | 2025-03-22 00:51:46 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2025-03-22 00:51:50 +0530 |
| commit | f09f1aa704f06472ec134b40e2f69bf3279c3f06 (patch) | |
| tree | f292716c90d16ade8d31b2b2d70da8481d1e8294 /src/InputMediator.cpp | |
| parent | 498135054a168bd839f2ee8ebb1ba245d72a8f3b (diff) | |
| download | null-browser-f09f1aa704f06472ec134b40e2f69bf3279c3f06.tar.gz null-browser-f09f1aa704f06472ec134b40e2f69bf3279c3f06.zip | |
Add web.keymap.set + test keymaps config.lua
Diffstat (limited to 'src/InputMediator.cpp')
| -rw-r--r-- | src/InputMediator.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/InputMediator.cpp b/src/InputMediator.cpp index f935ad2..61ef125 100644 --- a/src/InputMediator.cpp +++ b/src/InputMediator.cpp @@ -5,14 +5,24 @@ #include "CommandParser.hpp" #include "InputMediator.hpp" #include "LuaRuntime.hpp" +#include "keymap/KeymapEvaluator.hpp" #include "widgets/WebViewStack.hpp" +// TODO: Rename this InputMediator::InputMediator(WebViewStack *webViewStack, LuaRuntime *luaRuntime, KeymapEvaluator *keymapEvaluator) : QObject(), webViewStack(webViewStack), luaRuntime(luaRuntime), keymapEvaluator(keymapEvaluator) { connect(luaRuntime, &LuaRuntime::urlOpened, webViewStack, &WebViewStack::openUrl); + connect(luaRuntime, &LuaRuntime::keymapAddRequested, this, + &InputMediator::addKeymap); +} + +void InputMediator::addKeymap(QString modeString, QString keyseq, + std::function<void()> action) { + KeyMode mode = keymapEvaluator->modeFromString(modeString); + keymapEvaluator->addKeymap(mode, keyseq, action); } void InputMediator::evaluateCommand(QString command) { |
