From 7fb20f2c55ffead39c8ba25bca9db53d0934ab67 Mon Sep 17 00:00:00 2001 From: yparitcher Date: Sun, 8 Nov 2020 16:43:37 -0500 Subject: [PATCH] Dispatcher: add Screenshot action (#6858) --- frontend/apps/filemanager/filemanager.lua | 6 +++++- frontend/apps/reader/readerui.lua | 6 +++++- frontend/dispatcher.lua | 2 ++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/frontend/apps/filemanager/filemanager.lua b/frontend/apps/filemanager/filemanager.lua index 50b137510..4baab12f0 100644 --- a/frontend/apps/filemanager/filemanager.lua +++ b/frontend/apps/filemanager/filemanager.lua @@ -459,7 +459,11 @@ function FileManager:init() self.menu = FileManagerMenu:new{ ui = self } - self.active_widgets = { Screenshoter:new{ prefix = 'FileManager' } } + + local screenshoter = Screenshoter:new{ prefix = 'FileManager' } + table.insert(self, screenshoter) -- for regular events + self.active_widgets = { screenshoter } -- to get events even when hidden + table.insert(self, self.menu) table.insert(self, FileManagerHistory:new{ ui = self, diff --git a/frontend/apps/reader/readerui.lua b/frontend/apps/reader/readerui.lua index d62314572..36916abe6 100644 --- a/frontend/apps/reader/readerui.lua +++ b/frontend/apps/reader/readerui.lua @@ -81,7 +81,11 @@ local ReaderUI = InputContainer:new{ function ReaderUI:registerModule(name, ui_module, always_active) if name then self[name] = ui_module end ui_module.name = "reader" .. name - table.insert(always_active and self.active_widgets or self, ui_module) + table.insert(self, ui_module) + if always_active then + -- to get events even when hidden + table.insert(self.active_widgets, ui_module) + end end function ReaderUI:registerPostInitCallback(callback) diff --git a/frontend/dispatcher.lua b/frontend/dispatcher.lua index e66e15d75..475ea89db 100644 --- a/frontend/dispatcher.lua +++ b/frontend/dispatcher.lua @@ -83,6 +83,7 @@ local settingsList = { set_no_flash_on_second_chapter_page = { category="string", event="SetNoFlashOnSecondChapterPage", title=_("Never flash on chapter's 2nd page"), device=true, condition=Device:hasEinkScreen(), args={true, false}, toggle={_("On"), _("Off")},}, toggle_no_flash_on_second_chapter_page = { category="none", event="ToggleNoFlashOnSecondChapterPage", title=_("Toggle flashing on chapter's 2nd page"), device=true, condition=Device:hasEinkScreen(), separator=true,}, favorites = { category="none", event="ShowColl", arg="favorites", title=_("Favorites"), device=true,}, + screenshot = { category="none", event="Screenshot", title=_("Screenshot"), device=true, separator=true,}, -- filemanager settings folder_up = { category="none", event="FolderUp", title=_("Folder up"), filemanager=true}, @@ -207,6 +208,7 @@ local dispatcher_menu_order = { "toggle_wifi", "rotation_mode", + "screenshot", -- filemanager "folder_up",