summaryrefslogtreecommitdiff
path: root/src/tangara/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/tangara/ui')
-rw-r--r--src/tangara/ui/ui_fsm.cpp5
-rw-r--r--src/tangara/ui/ui_fsm.hpp2
2 files changed, 7 insertions, 0 deletions
diff --git a/src/tangara/ui/ui_fsm.cpp b/src/tangara/ui/ui_fsm.cpp
index a22c704b..ebc4b635 100644
--- a/src/tangara/ui/ui_fsm.cpp
+++ b/src/tangara/ui/ui_fsm.cpp
@@ -714,6 +714,11 @@ void Lua::entry() {
});
registry.AddPropertyModule("sd_card", {
{"mounted", &sSdMounted},
+ {"unmount", [&](lua_State*) {
+ events::System().Dispatch(
+ UnmountRequest{});
+ return 0;
+ }},
});
registry.AddPropertyModule("usb",
{
diff --git a/src/tangara/ui/ui_fsm.hpp b/src/tangara/ui/ui_fsm.hpp
index aae69f94..d4354bec 100644
--- a/src/tangara/ui/ui_fsm.hpp
+++ b/src/tangara/ui/ui_fsm.hpp
@@ -37,6 +37,8 @@
namespace ui {
+struct UnmountRequest : tinyfsm::Event {};
+
class UiState : public tinyfsm::Fsm<UiState> {
public:
static auto InitBootSplash(drivers::IGpios&, drivers::NvsStorage&) -> bool;