diff options
Diffstat (limited to 'lua/main_menu.lua')
| -rw-r--r-- | lua/main_menu.lua | 21 |
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 { |
