diff --git a/frontend/apps/reader/modules/readerfooter.lua b/frontend/apps/reader/modules/readerfooter.lua index f5e484cc2..db9608ef2 100644 --- a/frontend/apps/reader/modules/readerfooter.lua +++ b/frontend/apps/reader/modules/readerfooter.lua @@ -524,6 +524,10 @@ function ReaderFooter:onPosUpdate(pos) self:updateFooterPos() end +function ReaderFooter:onUpdateFooter() + self:updateFooter() +end + -- recalculate footer sizes when document page count is updated -- see documentation for more info about this event. ReaderFooter.onUpdatePos = ReaderFooter.updateFooter diff --git a/frontend/apps/reader/modules/readerpaging.lua b/frontend/apps/reader/modules/readerpaging.lua index 09b0aa00b..f2b7aa3ed 100644 --- a/frontend/apps/reader/modules/readerpaging.lua +++ b/frontend/apps/reader/modules/readerpaging.lua @@ -367,6 +367,8 @@ function ReaderPaging:onSwipe(_, ges) self:onPagingRel(-1) end else + -- update footer (time & battery) + self.view.footer:updateFooter() -- trigger full refresh UIManager:setDirty(nil, "full") end @@ -849,6 +851,9 @@ end -- wrapper for bounds checking function ReaderPaging:_gotoPage(number, orig_mode) if number == self.current_page or not number then + -- update footer even if we stay on the same page (like when + -- viewing the bottom part of a page from a top part view) + self.view.footer:updateFooter() return true end if number > self.number_of_pages or number < 1 then diff --git a/frontend/apps/reader/modules/readerrolling.lua b/frontend/apps/reader/modules/readerrolling.lua index 86d1283e7..94e4ad405 100644 --- a/frontend/apps/reader/modules/readerrolling.lua +++ b/frontend/apps/reader/modules/readerrolling.lua @@ -302,6 +302,11 @@ function ReaderRolling:onSwipe(_, ges) else self:onGotoViewRel(-1) end + else + -- update footer (time & battery) + self.view.footer:updateFooter() + -- trigger full refresh + UIManager:setDirty(nil, "full") end end diff --git a/frontend/ui/widget/dictquicklookup.lua b/frontend/ui/widget/dictquicklookup.lua index 55a57fd21..bfb794ad1 100644 --- a/frontend/ui/widget/dictquicklookup.lua +++ b/frontend/ui/widget/dictquicklookup.lua @@ -627,6 +627,8 @@ function DictQuickLookup:onSwipe(arg, ges) elseif ges.direction == "east" then self:changeToPrevDict() else + -- update footer (time & battery) + UIManager:broadcastEvent(Event:new("UpdateFooter")) -- trigger full refresh UIManager:setDirty(nil, "full") end