From ba13e6b4104c8e7c54d3a5455a393afc903a4024 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Wed, 29 Feb 2012 19:32:00 +0100 Subject: [PATCH 1/2] make up/down levels same I use addition and substraction instead of multipiciation with factor to make zoom deterministic (and this, one zoom up too many can be undone with simple zoom out which wasn't the case). --- pdfreader.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pdfreader.lua b/pdfreader.lua index 5b700fdaa..f89646055 100644 --- a/pdfreader.lua +++ b/pdfreader.lua @@ -361,17 +361,17 @@ function PDFReader:inputloop() self.altmode = true elseif ev.code == KEY_PGFWD or ev.code == KEY_LPGFWD then if self.shiftmode then - self:setglobalzoom(self.globalzoom*1.2) + self:setglobalzoom(self.globalzoom+0.2) elseif self.altmode then - self:setglobalzoom(self.globalzoom*1.1) + self:setglobalzoom(self.globalzoom+0.1) else self:goto(self.pageno + 1) end elseif ev.code == KEY_PGBCK or ev.code == KEY_LPGBCK then if self.shiftmode then - self:setglobalzoom(self.globalzoom*0.8) + self:setglobalzoom(self.globalzoom-0.2) elseif self.altmode then - self:setglobalzoom(self.globalzoom*0.9) + self:setglobalzoom(self.globalzoom-0.1) else self:goto(self.pageno - 1) end From 4481fc517899b42c28bcedc4a5178666e067744e Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Wed, 29 Feb 2012 19:39:03 +0100 Subject: [PATCH 2/2] reset x and y position when moving between pages in pan_by_page mode --- pdfreader.lua | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pdfreader.lua b/pdfreader.lua index f89646055..c1f6e387d 100644 --- a/pdfreader.lua +++ b/pdfreader.lua @@ -365,6 +365,10 @@ function PDFReader:inputloop() elseif self.altmode then self:setglobalzoom(self.globalzoom+0.1) else + if self.pan_by_page then + self.offset_x = 0 + self.offset_y = 0 + end self:goto(self.pageno + 1) end elseif ev.code == KEY_PGBCK or ev.code == KEY_LPGBCK then @@ -373,6 +377,10 @@ function PDFReader:inputloop() elseif self.altmode then self:setglobalzoom(self.globalzoom-0.1) else + if self.pan_by_page then + self.offset_x = 0 + self.offset_y = 0 + end self:goto(self.pageno - 1) end elseif ev.code == KEY_BACK then