diff --git a/frontend/apps/reader/modules/readerstatus.lua b/frontend/apps/reader/modules/readerstatus.lua index 8cfb0025f..032e7930e 100644 --- a/frontend/apps/reader/modules/readerstatus.lua +++ b/frontend/apps/reader/modules/readerstatus.lua @@ -23,12 +23,6 @@ function ReaderStatus:init() else self.total_pages = self.document:getPageCount() self.ui.menu:registerToMainMenu(self) - -- register event listener if enabled - if G_reader_settings:nilOrTrue("auto_book_status") then - self.onEndOfBook = function() - self:showStatus() - end - end end end @@ -41,6 +35,12 @@ function ReaderStatus:addToMainMenu(menu_items) } end +function ReaderStatus:onEndOfBook() + if G_reader_settings:nilOrTrue("auto_book_status") then + self:showStatus() + end +end + function ReaderStatus:showStatus() local status_page = BookStatusWidget:new { thumbnail = self.document:getCoverPageImage(), diff --git a/frontend/ui/elements/common_settings_menu_table.lua b/frontend/ui/elements/common_settings_menu_table.lua index 1aa574bee..c515333c2 100644 --- a/frontend/ui/elements/common_settings_menu_table.lua +++ b/frontend/ui/elements/common_settings_menu_table.lua @@ -125,37 +125,51 @@ if Device:isAndroid() then table.insert(common_settings.screen.sub_item_table, require("ui/elements/screen_fullscreen_menu_table")) end -common_settings.save_document = { - text = _("Save document"), +common_settings.document = { + text = _("Document"), sub_item_table = { { - text = _("Prompt"), - checked_func = function() - local setting = G_reader_settings:readSetting("save_document") - return setting == "prompt" or setting == nil - end, - callback = function() - G_reader_settings:delSetting("save_document") - end, - }, - { - text = _("Always"), - checked_func = function() - return G_reader_settings:readSetting("save_document") - == "always" - end, - callback = function() - G_reader_settings:saveSetting("save_document", "always") - end, + text = _("Save document (write highlights into PDF)"), + sub_item_table = { + { + text = _("Prompt"), + checked_func = function() + local setting = G_reader_settings:readSetting("save_document") + return setting == "prompt" or setting == nil + end, + callback = function() + G_reader_settings:delSetting("save_document") + end, + }, + { + text = _("Always"), + checked_func = function() + return G_reader_settings:readSetting("save_document") + == "always" + end, + callback = function() + G_reader_settings:saveSetting("save_document", "always") + end, + }, + { + text = _("Disable"), + checked_func = function() + return G_reader_settings:readSetting("save_document") + == "disable" + end, + callback = function() + G_reader_settings:saveSetting("save_document", "disable") + end, + }, + }, }, { - text = _("Disable"), + text = _("Show book status at end of document "), checked_func = function() - return G_reader_settings:readSetting("save_document") - == "disable" + return G_reader_settings:nilOrTrue("auto_book_status") end, callback = function() - G_reader_settings:saveSetting("save_document", "disable") + G_reader_settings:flipNilOrTrue("auto_book_status") end, }, }, diff --git a/frontend/ui/elements/filemanager_menu_order.lua b/frontend/ui/elements/filemanager_menu_order.lua index ba1cfe111..40673349c 100644 --- a/frontend/ui/elements/filemanager_menu_order.lua +++ b/frontend/ui/elements/filemanager_menu_order.lua @@ -23,7 +23,7 @@ local order = { "----------------------------", "network", "screen", - "save_document", + "document", "----------------------------", "language", "time", diff --git a/frontend/ui/elements/reader_menu_order.lua b/frontend/ui/elements/reader_menu_order.lua index c35e487b3..25b450fe4 100644 --- a/frontend/ui/elements/reader_menu_order.lua +++ b/frontend/ui/elements/reader_menu_order.lua @@ -42,7 +42,7 @@ local order = { "network", "screen", "screensaver", - "save_document", + "document", "----------------------------", "language", "time",