diff --git a/frontend/apps/reader/readerui.lua b/frontend/apps/reader/readerui.lua index cc10cdad7..08f5d3138 100644 --- a/frontend/apps/reader/readerui.lua +++ b/frontend/apps/reader/readerui.lua @@ -428,7 +428,16 @@ function ReaderUI:init() -- end end -function ReaderUI:getLastDirFile() +function ReaderUI:setLastDirForFileBrowser(dir) + self.last_dir_for_file_browser = dir +end + +function ReaderUI:getLastDirFile(to_file_browser) + if to_file_browser and self.last_dir_for_file_browser then + local dir = self.last_dir_for_file_browser + self.last_dir_for_file_browser = nil + return dir + end local QuickStart = require("ui/quickstart") local last_dir local last_file = G_reader_settings:readSetting("lastfile") @@ -447,7 +456,7 @@ function ReaderUI:showFileManager(file) last_dir, last_file = util.splitFilePathName(file) last_dir = last_dir:match("(.*)/") else - last_dir, last_file = self:getLastDirFile() + last_dir, last_file = self:getLastDirFile(true) end if FileManager.instance then FileManager.instance:reinit(last_dir, last_file) diff --git a/plugins/newsdownloader.koplugin/main.lua b/plugins/newsdownloader.koplugin/main.lua index f6a3a56a7..ead943698 100644 --- a/plugins/newsdownloader.koplugin/main.lua +++ b/plugins/newsdownloader.koplugin/main.lua @@ -467,6 +467,8 @@ function NewsDownloader:onCloseDocument() logger.dbg("NewsDownloader: news_download_dir_path:", news_download_dir_path) logger.dbg("NewsDownloader: removing NewsDownloader file from history.") ReadHistory:removeItemByPath(document_full_path) + local doc_dir = util.splitFilePathName(document_full_path) + self.ui:setLastDirForFileBrowser(doc_dir) end end diff --git a/plugins/send2ebook.koplugin/main.lua b/plugins/send2ebook.koplugin/main.lua index f6cc1e308..60f97fd79 100644 --- a/plugins/send2ebook.koplugin/main.lua +++ b/plugins/send2ebook.koplugin/main.lua @@ -227,6 +227,7 @@ function Send2Ebook:onCloseDocument() logger.dbg("Send2Ebook: download_dir_path:", download_dir_path) logger.dbg("Send2Ebook: removing Send2Ebook file from history.") ReadHistory:removeItemByPath(document_full_path) + self.ui:setLastDirForFileBrowser(download_dir_path) end end diff --git a/plugins/wallabag.koplugin/main.lua b/plugins/wallabag.koplugin/main.lua index 92effb149..4cc80b048 100644 --- a/plugins/wallabag.koplugin/main.lua +++ b/plugins/wallabag.koplugin/main.lua @@ -1047,6 +1047,7 @@ function Wallabag:onCloseDocument() local document_full_path = self.ui.document.file if document_full_path and self.directory and self:getLastPercent() == 1 and self.directory == string.sub(document_full_path, 1, string.len(self.directory)) then ReadHistory:removeItemByPath(document_full_path) + self.ui:setLastDirForFileBrowser(self.directory) end end end