From b1e9b35da82e3ffba5795784e86f0a7358ef68f3 Mon Sep 17 00:00:00 2001 From: Paulo Matias Date: Fri, 17 Jan 2014 23:39:17 -0200 Subject: [PATCH 1/2] Avoid PageUpdate from receiving out-of-range page Otherwise, current_page can acquire negative values, or values greater than the page count, when the user tries to go back the first page or past the last page. --- frontend/ui/reader/readerrolling.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/ui/reader/readerrolling.lua b/frontend/ui/reader/readerrolling.lua index 2ab3aa3d1..8f5abf580 100644 --- a/frontend/ui/reader/readerrolling.lua +++ b/frontend/ui/reader/readerrolling.lua @@ -349,7 +349,7 @@ end function ReaderRolling:gotoPage(new_page) self.ui.document:gotoPage(new_page) - self.ui:handleEvent(Event:new("PageUpdate", new_page)) + self.ui:handleEvent(Event:new("PageUpdate", self.ui.document:getCurrentPage())) end function ReaderRolling:gotoXPointer(xpointer) From f44113577276a4799f92b9ce305bd86b4ee549d9 Mon Sep 17 00:00:00 2001 From: Paulo Matias Date: Fri, 17 Jan 2014 23:51:52 -0200 Subject: [PATCH 2/2] Restore north and south swipe gestures Might be useful in pages covered with links, which make it difficult to tap in the correct point for flipping the page. --- frontend/ui/reader/readerrolling.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/frontend/ui/reader/readerrolling.lua b/frontend/ui/reader/readerrolling.lua index 8f5abf580..5debdfd5d 100644 --- a/frontend/ui/reader/readerrolling.lua +++ b/frontend/ui/reader/readerrolling.lua @@ -183,7 +183,11 @@ function ReaderRolling:onTapBackward() end function ReaderRolling:onSwipe(arg, ges) - if ges.direction == "west" then + if ges.direction == "north" then + self:onGotoViewRel(1) + elseif ges.direction == "south" then + self:onGotoViewRel(-1) + elseif ges.direction == "west" then self.ui.document:goForward() self:onUpdateXPointer() elseif ges.direction == "east" then