From effac1917a615660bf76b35b3605ac2d3eeabd2f Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 20 Nov 2023 14:43:20 +1100 Subject: Use C functions for the backstack, instead of a lua module Working with the default group and root kinda sucks if you have to do it from lua! --- src/ui/include/screen_lua.hpp | 9 ++++++++- src/ui/include/ui_fsm.hpp | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src/ui/include') diff --git a/src/ui/include/screen_lua.hpp b/src/ui/include/screen_lua.hpp index df83ea8b..ee9f6813 100644 --- a/src/ui/include/screen_lua.hpp +++ b/src/ui/include/screen_lua.hpp @@ -15,7 +15,14 @@ namespace screens { class Lua : public Screen { public: - explicit Lua(lua_State* l); + Lua(); + ~Lua(); + + auto SetObjRef(lua_State*) -> void; + + private: + lua_State* s_; + std::optional obj_ref_; }; } // namespace screens diff --git a/src/ui/include/ui_fsm.hpp b/src/ui/include/ui_fsm.hpp index 39fae4b0..d3ea7eac 100644 --- a/src/ui/include/ui_fsm.hpp +++ b/src/ui/include/ui_fsm.hpp @@ -135,6 +135,9 @@ class Lua : public UiState { using UiState::react; private: + auto PushLuaScreen(lua_State*) -> int; + auto PopLuaScreen(lua_State*) -> int; + std::shared_ptr battery_pct_; std::shared_ptr battery_mv_; std::shared_ptr battery_charging_; -- cgit v1.2.3