diff --git a/filechooser.lua b/filechooser.lua index d7007f9ee..ac540e012 100644 --- a/filechooser.lua +++ b/filechooser.lua @@ -153,12 +153,15 @@ function FileChooser:choose(ypos, height) elseif ev.code == KEY_FW_DOWN then nextItem() elseif ev.code == KEY_F then -- invoke fontchooser menu - FontChooser:init() fonts_menu = SelectMenu:new{ menu_title = "Fonts Menu", item_array = FontChooser.fonts, } - FontChooser.cfont = FontChooser.fonts[fonts_menu:choose(0, height)] + local re = fonts_menu:choose(0, height) + if re then + FontChooser.cfont = FontChooser.fonts[re] + FontChooser:init() + end pagedirty = true elseif ev.code == KEY_S then -- invoke search input keywords = InputBox:input(height-100, 100, "Search:") @@ -169,8 +172,8 @@ function FileChooser:choose(ypos, height) || to test search feature in EMU mode ---------------------------------------------------------------- --]] - --FileSearcher:init("/home/dave/documents/kindle/backup/documents") - FileSearcher:init() + FileSearcher:init("/home/dave/documents/kindle/backup/documents") + --FileSearcher:init() file = FileSearcher:choose(ypos, height, keywords) if file then return file diff --git a/filesearcher.lua b/filesearcher.lua index c4404476f..6466b2098 100644 --- a/filesearcher.lua +++ b/filesearcher.lua @@ -116,7 +116,6 @@ function FileSearcher:choose(ypos, height, keywords) local perpage = math.floor(height / self.spacing) - 2 local pagedirty = true local markerdirty = false - self:updateFont() local prevItem = function () if self.current == 1 then @@ -154,6 +153,7 @@ function FileSearcher:choose(ypos, height, keywords) end while true do + self:updateFont() if pagedirty then markerdirty = true fb.bb:paintRect(0, ypos, fb.bb:getWidth(), height, 0) @@ -249,12 +249,15 @@ function FileSearcher:choose(ypos, height, keywords) end pagedirty = true elseif ev.code == KEY_F then -- invoke fontchooser menu - FontChooser:init() fonts_menu = SelectMenu:new{ menu_title = "Fonts Menu", item_array = FontChooser.fonts, } - FontChooser.cfont = FontChooser.fonts[fonts_menu:choose(0, height)] + local re = fonts_menu:choose(0, height) + if re then + FontChooser.cfont = FontChooser.fonts[re] + FontChooser:init() + end pagedirty = true elseif ev.code == KEY_ENTER or ev.code == KEY_FW_PRESS then file_entry = self.result[perpage*(self.page-1)+self.current]