From ac6ccc003878e569c29f12821b40c844d4da9723 Mon Sep 17 00:00:00 2001 From: Zijie He Date: Thu, 9 Jun 2016 10:22:09 -0700 Subject: [PATCH] ReaderZooming should remove the size of page footer when calculating zoom value. --- frontend/apps/reader/modules/readerzooming.lua | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/frontend/apps/reader/modules/readerzooming.lua b/frontend/apps/reader/modules/readerzooming.lua index de6e1a845..8050c4cc9 100644 --- a/frontend/apps/reader/modules/readerzooming.lua +++ b/frontend/apps/reader/modules/readerzooming.lua @@ -228,12 +228,19 @@ function ReaderZooming:getZoom(pageno) self.view:onBBoxUpdate(nil) end -- calculate zoom value: - local zoom_w = self.dimen.w / page_size.w - local zoom_h = self.dimen.h / page_size.h - if self.rotation % 180 ~= 0 then + local zoom_w = self.dimen.w + local zoom_h = self.dimen.h + if self.ui.view.footer_visible then + zoom_h = zoom_h - self.ui.view.footer.progress_text:getSize().h + end + if self.rotation % 180 == 0 then + -- No rotation or rotated by 180 degrees + zoom_w = zoom_w / page_size.w + zoom_h = zoom_h / page_size.h + else -- rotated by 90 or 270 degrees - zoom_w = self.dimen.w / page_size.h - zoom_h = self.dimen.h / page_size.w + zoom_w = zoom_w / page_size.h + zoom_h = zoom_h / page_size.w end if self.zoom_mode == "content" or self.zoom_mode == "page" then if zoom_w < zoom_h then