From 9204b585aedd35f85d3c9118299459d3586cf499 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Fri, 28 Jun 2024 13:50:40 +1000 Subject: show a message if the sd card is unmounted --- lua/main_menu.lua | 51 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 33 insertions(+), 18 deletions(-) (limited to 'lua/main_menu.lua') diff --git a/lua/main_menu.lua b/lua/main_menu.lua index 5426ee0d..f3b7a042 100644 --- a/lua/main_menu.lua +++ b/lua/main_menu.lua @@ -90,26 +90,41 @@ return widgets.MenuScreen:new { -- a list of all available database indexes, but could also be the contents -- of the SD card root. - local list = lvgl.List(self.root, { - w = lvgl.PCT(100), - h = lvgl.PCT(100), - flex_grow = 1, - }) + if require("sd_card").mounted:get() then + local list = lvgl.List(self.root, { + w = lvgl.PCT(100), + h = lvgl.PCT(100), + flex_grow = 1, + }) - local indexes = database.indexes() - for _, idx in ipairs(indexes) do - local btn = list:add_btn(nil, tostring(idx)) - btn:onClicked(function() - backstack.push(browser:new { - title = tostring(idx), - iterator = idx:iter(), - }) - end) - btn:add_style(styles.list_item) - if not has_focus then - has_focus = true - btn:focus() + local indexes = database.indexes() + for _, idx in ipairs(indexes) do + local btn = list:add_btn(nil, tostring(idx)) + btn:onClicked(function() + backstack.push(browser:new { + title = tostring(idx), + iterator = idx:iter(), + }) + end) + btn:add_style(styles.list_item) + if not has_focus then + has_focus = true + btn:focus() + end end + else + local container = self.root:Object { + w = lvgl.PCT(100), + flex_grow = 1, + } + container:Label { + w = lvgl.PCT(100), + h = lvgl.SIZE_CONTENT, + text_align = 2, + long_mode = 0, + margin_all = 4, + text = "SD Card is not inserted or could not be opened.", + }:center(); end -- Finally, the bottom bar with icon buttons for other device features. -- cgit v1.2.3