input callback fix + added focused property

This commit is contained in:
MihailRis
2024-05-13 17:10:12 +03:00
parent 165525f18c
commit 01c7cd9141
2 changed files with 24 additions and 1 deletions
+6 -1
View File
@@ -7,6 +7,7 @@
#include "../../../window/input.hpp"
#include "../../../window/Events.hpp"
#include "../../../util/stringutil.hpp"
#include "../../../graphics/ui/GUI.hpp"
#include "../../../frontend/screens/Screen.hpp"
#include "../../../frontend/hud.hpp"
#include "../../../engine.hpp"
@@ -31,7 +32,11 @@ static int l_add_callback(lua_State* L) {
throw std::runtime_error("unknown binding "+util::quote(bindname));
}
state->pushvalue(2);
runnable callback = state->createRunnable();
runnable callback = [=]() {
if (!scripting::engine->getGUI()->isFocusCaught()) {
state->createRunnable();
}
};
if (hud) {
hud->keepAlive(bind->second.onactived.add(callback));
} else {