|
|
@ -48,13 +48,8 @@ local ReaderView = OverlapGroup:extend{
|
|
|
|
page_scroll = nil,
|
|
|
|
page_scroll = nil,
|
|
|
|
page_bgcolor = Blitbuffer.gray(DBACKGROUND_COLOR/15),
|
|
|
|
page_bgcolor = Blitbuffer.gray(DBACKGROUND_COLOR/15),
|
|
|
|
page_states = {},
|
|
|
|
page_states = {},
|
|
|
|
scroll_mode = "vertical",
|
|
|
|
|
|
|
|
-- properties of the gap drawn between each page in scroll mode:
|
|
|
|
-- properties of the gap drawn between each page in scroll mode:
|
|
|
|
page_gap = {
|
|
|
|
page_gap = {
|
|
|
|
-- width in pixels (when scrolling horizontally)
|
|
|
|
|
|
|
|
width = Screen:scaleBySize(G_reader_settings:readSetting("page_gap_width") or 8),
|
|
|
|
|
|
|
|
-- height in pixels (when scrolling vertically)
|
|
|
|
|
|
|
|
height = Screen:scaleBySize(G_reader_settings:readSetting("page_gap_height") or 8),
|
|
|
|
|
|
|
|
-- color (0 = white, 8 = gray, 15 = black)
|
|
|
|
-- color (0 = white, 8 = gray, 15 = black)
|
|
|
|
color = Blitbuffer.gray((G_reader_settings:readSetting("page_gap_color") or 8)/15),
|
|
|
|
color = Blitbuffer.gray((G_reader_settings:readSetting("page_gap_color") or 8)/15),
|
|
|
|
},
|
|
|
|
},
|
|
|
@ -387,11 +382,7 @@ function ReaderView:getScrollPageRect(page, rect_p)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderView:drawPageGap(bb, x, y)
|
|
|
|
function ReaderView:drawPageGap(bb, x, y)
|
|
|
|
if self.scroll_mode == "vertical" then
|
|
|
|
bb:paintRect(x, y, self.dimen.w, self.page_gap.height, self.page_gap.color)
|
|
|
|
bb:paintRect(x, y, self.dimen.w, self.page_gap.height, self.page_gap.color)
|
|
|
|
|
|
|
|
elseif self.scroll_mode == "horizontal" then
|
|
|
|
|
|
|
|
bb:paintRect(x, y, self.page_gap.width, self.dimen.h, self.page_gap.color)
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderView:drawSinglePage(bb, x, y)
|
|
|
|
function ReaderView:drawSinglePage(bb, x, y)
|
|
|
@ -780,6 +771,8 @@ function ReaderView:onReadSettings(config)
|
|
|
|
self.page_scroll = page_scroll == 1 and true or false
|
|
|
|
self.page_scroll = page_scroll == 1 and true or false
|
|
|
|
self.highlight.saved = config:readSetting("highlight") or {}
|
|
|
|
self.highlight.saved = config:readSetting("highlight") or {}
|
|
|
|
self.page_overlap_style = config:readSetting("page_overlap_style") or G_reader_settings:readSetting("page_overlap_style") or "dim"
|
|
|
|
self.page_overlap_style = config:readSetting("page_overlap_style") or G_reader_settings:readSetting("page_overlap_style") or "dim"
|
|
|
|
|
|
|
|
self.page_gap.height = Screen:scaleBySize(config:readSetting("kopt_page_gap_height") or
|
|
|
|
|
|
|
|
G_reader_settings:readSetting("kopt_page_gap_height") or 8)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderView:onPageUpdate(new_page_no)
|
|
|
|
function ReaderView:onPageUpdate(new_page_no)
|
|
|
@ -843,6 +836,14 @@ function ReaderView:onSetViewMode(new_mode)
|
|
|
|
return true
|
|
|
|
return true
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--Refresh after changing a variable done by koptoptions.lua since all of them
|
|
|
|
|
|
|
|
--requires full screen refresh. If this handler used for changing page gap from
|
|
|
|
|
|
|
|
--another source (eg. coptions.lua) triggering a redraw is needed.
|
|
|
|
|
|
|
|
function ReaderView:onPageGapUpdate(page_gap)
|
|
|
|
|
|
|
|
self.page_gap.height = page_gap
|
|
|
|
|
|
|
|
return true
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderView:onSaveSettings()
|
|
|
|
function ReaderView:onSaveSettings()
|
|
|
|
self.ui.doc_settings:saveSetting("render_mode", self.render_mode)
|
|
|
|
self.ui.doc_settings:saveSetting("render_mode", self.render_mode)
|
|
|
|
self.ui.doc_settings:saveSetting("screen_mode", self.screen_mode)
|
|
|
|
self.ui.doc_settings:saveSetting("screen_mode", self.screen_mode)
|
|
|
|