From 9fc048ecfcfbae8e5a13e6a34782c47d3a6c6302 Mon Sep 17 00:00:00 2001 From: chrox Date: Thu, 3 Jul 2014 17:54:30 +0800 Subject: [PATCH] considering visible page count in readerrolling This should fix #660. --- frontend/apps/reader/modules/readerrolling.lua | 3 ++- frontend/document/credocument.lua | 4 ++++ koreader-base | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/frontend/apps/reader/modules/readerrolling.lua b/frontend/apps/reader/modules/readerrolling.lua index d718c8991..4de4d323e 100644 --- a/frontend/apps/reader/modules/readerrolling.lua +++ b/frontend/apps/reader/modules/readerrolling.lua @@ -238,7 +238,8 @@ function ReaderRolling:onGotoViewRel(diff) end self:gotoPos(self.current_pos + pan_diff) elseif self.view.view_mode == "page" then - self:gotoPage(self.current_page + diff) + local page_count = self.ui.document:getVisiblePageCount() + self:gotoPage(self.current_page + diff*page_count) end return true end diff --git a/frontend/document/credocument.lua b/frontend/document/credocument.lua index 46053ee3c..1fd6eb41a 100644 --- a/frontend/document/credocument.lua +++ b/frontend/document/credocument.lua @@ -361,6 +361,10 @@ function CreDocument:setFloatingPunctuation(enabled) self._document:setIntProperty("crengine.style.floating.punctuation.enabled", enabled) end +function CreDocument:getVisiblePageCount() + return self._document:getVisiblePageCount() +end + function CreDocument:setVisiblePageCount(new_count) DEBUG("CreDocument: set visible page count", new_count) self._document:setVisiblePageCount(new_count) diff --git a/koreader-base b/koreader-base index 3672c27f3..25deec728 160000 --- a/koreader-base +++ b/koreader-base @@ -1 +1 @@ -Subproject commit 3672c27f318b26830c569dc67a8121a0ef4ca2cc +Subproject commit 25deec728a94d9546e38f494bc47b26808742008