always show progress bar in flipping mode

tap on progress bar in flipping mode will goto corresponding page
This commit is contained in:
chrox
2013-12-17 22:42:25 +08:00
parent da317ed14a
commit 93866822d0
5 changed files with 46 additions and 17 deletions

View File

@@ -176,17 +176,37 @@ function ReaderPaging:onToggleFlipping()
self.view.flipping_visible = not self.view.flipping_visible
self.flipping_mode = self.view.flipping_visible
self.flipping_page = self.current_page
if self.flipping_mode then
self:updateOriginalPage(self.current_page)
self:enterFlippingMode()
else
self:updateOriginalPage(nil)
self:exitFlippingMode()
end
self.view:resetLayout()
self.ui:handleEvent(Event:new("SetFlippingMode", self.flipping_mode))
self.ui:handleEvent(Event:new("SetHinting", not self.flipping_mode))
self.ui:handleEvent(Event:new("ReZoom"))
UIManager:setDirty(self.view.dialog, "partial")
end
function ReaderPaging:enterFlippingMode()
self.orig_reflow_mode = self.view.document.configurable.text_wrap
self.orig_footer_mode = self.view.footer_visible
self.orig_scroll_mode = self.view.page_scroll
self.view.document.configurable.text_wrap = 0
self.view.page_scroll = false
self.view.footer_visible = true
end
function ReaderPaging:exitFlippingMode()
self.view.document.configurable.text_wrap = self.orig_reflow_mode
self.view.page_scroll = self.orig_scroll_mode
self.view.footer_visible = self.orig_footer_mode
end
function ReaderPaging:updateOriginalPage(page)
self.original_page = page
end
@@ -675,4 +695,11 @@ function ReaderPaging:onGotoPage(number)
return true
end
function ReaderPaging:onGotoPercentage(percentage)
if percentage < 0 then percentage = 0 end
if percentage > 1 then percentage = 1 end
self:gotoPage(math.floor(percentage*self.number_of_pages))
return true
end
return ReaderPaging