diff --git a/plugins/statistics.koplugin/main.lua b/plugins/statistics.koplugin/main.lua index 31a27de0c..c3f003f45 100644 --- a/plugins/statistics.koplugin/main.lua +++ b/plugins/statistics.koplugin/main.lua @@ -2622,6 +2622,13 @@ function ReaderStatistics:onPageUpdate(pageno) return end + if self._reading_paused_ts then + -- Reading paused: don't update stats, but remember the current + -- page for when reading resumed. + self._reading_paused_curr_page = pageno + return + end + -- We only care about *actual* page turns ;) if self.curr_page == pageno then return @@ -2773,6 +2780,11 @@ function ReaderStatistics:onReadingResumed() if data_tuple then data_tuple[1] = data_tuple[1] + pause_duration end + if self._reading_paused_curr_page and self._reading_paused_curr_page ~= self.curr_page then + self._reading_paused_ts = nil + self:onPageUpdate(self._reading_paused_curr_page) + self._reading_paused_curr_page = nil + end end end self._reading_paused_ts = nil