diff --git a/frontend/ui/reader/readertypeset.lua b/frontend/ui/reader/readertypeset.lua index a1b0c5fae..17d2f0dd0 100644 --- a/frontend/ui/reader/readertypeset.lua +++ b/frontend/ui/reader/readertypeset.lua @@ -1,4 +1,5 @@ local InputContainer = require("ui/widget/container/inputcontainer") +local Screen = require("ui/screen") local Event = require("ui/event") local DEBUG = require("dbg") local _ = require("gettext") @@ -26,6 +27,9 @@ function ReaderTypeset:onReadSettings(config) -- default to enable embedded css self.embedded_css = config:readSetting("embedded_css") or true self.ui.document:setEmbeddedStyleSheet(self.embedded_css and 1 or 0) + + -- set page margins + self:onSetPageMargins(config:readSetting("copt_page_margins") or DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM) end function ReaderTypeset:onSaveSettings() @@ -109,4 +113,14 @@ function ReaderTypeset:addToMainMenu(tab_item_table) }) end +function ReaderTypeset:onSetPageMargins(margins) + local left = Screen:scaleByDPI(margins[1]) + local top = Screen:scaleByDPI(margins[2]) + local right = Screen:scaleByDPI(margins[3]) + local bottom = Screen:scaleByDPI(margins[4]) + self.ui.document:setPageMargins(left, top, right, bottom) + self.ui:handleEvent(Event:new("UpdatePos")) + return true +end + return ReaderTypeset diff --git a/frontend/ui/reader/readerview.lua b/frontend/ui/reader/readerview.lua index 266f79641..ebd9f6808 100644 --- a/frontend/ui/reader/readerview.lua +++ b/frontend/ui/reader/readerview.lua @@ -1,11 +1,11 @@ local OverlapGroup = require("ui/widget/overlapgroup") -local Screen = require("ui/screen") local ReaderFlipping = require("ui/reader/readerflipping") local ReaderFooter = require("ui/reader/readerfooter") local ReaderDogear = require("ui/reader/readerdogear") +local UIManager = require("ui/uimanager") +local Screen = require("ui/screen") local Geom = require("ui/geometry") local Event = require("ui/event") -local UIManager = require("ui/uimanager") local DEBUG = require("dbg") local ReaderView = OverlapGroup:new{ @@ -618,16 +618,6 @@ function ReaderView:onSetViewMode(new_mode) return true end -function ReaderView:onSetPageMargins(margins) - local left = Screen:scaleByDPI(margins[1]) - local top = Screen:scaleByDPI(margins[2]) - local right = Screen:scaleByDPI(margins[3]) - local bottom = Screen:scaleByDPI(margins[4]) - self.ui.document:setPageMargins(left, top, right, bottom) - self.ui:handleEvent(Event:new("UpdatePos")) - return true -end - function ReaderView:onSaveSettings() self.ui.doc_settings:saveSetting("render_mode", self.render_mode) self.ui.doc_settings:saveSetting("screen_mode", self.screen_mode)