aboutsummaryrefslogtreecommitdiff
path: root/src/LuaRuntime.hpp
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-03-22 00:51:46 +0530
committerAkshay Nair <phenax5@gmail.com>2025-03-22 00:51:50 +0530
commitf09f1aa704f06472ec134b40e2f69bf3279c3f06 (patch)
treef292716c90d16ade8d31b2b2d70da8481d1e8294 /src/LuaRuntime.hpp
parent498135054a168bd839f2ee8ebb1ba245d72a8f3b (diff)
downloadnull-browser-f09f1aa704f06472ec134b40e2f69bf3279c3f06.tar.gz
null-browser-f09f1aa704f06472ec134b40e2f69bf3279c3f06.zip
Add web.keymap.set + test keymaps config.lua
Diffstat (limited to 'src/LuaRuntime.hpp')
-rw-r--r--src/LuaRuntime.hpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/LuaRuntime.hpp b/src/LuaRuntime.hpp
index dd5c0ec..6c45ca5 100644
--- a/src/LuaRuntime.hpp
+++ b/src/LuaRuntime.hpp
@@ -1,6 +1,7 @@
#pragma once
#include <QtCore>
+#include <functional>
#include <lua.hpp>
#include "AsyncEventLoop.hpp"
@@ -18,17 +19,21 @@ public:
void evaluate(QString code);
QVariant evaluateSync(QString code);
+ void loadFile(QString code);
+
void stopEventLoop();
void startEventLoop();
QVariant getValue(int idx);
DELEGATE(eventLoop, queueTask, queueTask)
+ DEFINE_GETTER(getState, state)
signals:
void urlOpened(QString url, OpenType openType);
void evaluationCompleted(QVariant value);
void evaluationFailed(QString value);
+ void keymapAddRequested(QString mode, QString keyseq, std::function<void()>);
// void outputProduced(QVariant value);
protected:
@@ -36,6 +41,7 @@ protected:
~LuaRuntime();
static int lua_onUrlOpen(lua_State *state);
static int lua_onUrlTabOpen(lua_State *state);
+ static int lua_addKeymap(lua_State *state);
private:
lua_State *state;