summaryrefslogtreecommitdiff
path: root/lua/main_menu.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/main_menu.lua')
-rw-r--r--lua/main_menu.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/lua/main_menu.lua b/lua/main_menu.lua
index 8754df85..3f7f63e7 100644
--- a/lua/main_menu.lua
+++ b/lua/main_menu.lua
@@ -15,6 +15,7 @@ local font = require("font")
local theme = require("theme")
local img = require("images")
local playback = require("playback")
+local usb = require("usb")
return widgets.MenuScreen:new {
create_ui = function(self)
@@ -238,6 +239,26 @@ return widgets.MenuScreen:new {
end)
}
+ local unmount_btn = bottom_bar:Button {}
+ unmount_btn:onClicked(function()
+ sd_card.unmount()
+ end)
+ unmount_btn:Image { src = img.unmount }
+ widgets.Description(unmount_btn, "Unmount the SD Card")
+ theme.set_subject(unmount_btn, "menu_icon")
+ local unmount_btn_bind = function()
+ if sd_card.mounted:get() and not database.updating:get() and not usb.msc_enabled:get() then
+ unmount_btn:clear_flag(lvgl.FLAG.HIDDEN)
+ else
+ unmount_btn:add_flag(lvgl.FLAG.HIDDEN)
+ end
+ end
+ self.bindings = self.bindings + {
+ sd_card.mounted:bind(unmount_btn_bind),
+ database.updating:bind(unmount_btn_bind),
+ usb.msc_enabled:bind(unmount_btn_bind)
+ }
+
local files_btn = bottom_bar:Button {}
files_btn:onClicked(function()
backstack.push(require("file_browser"):new {