diff --git a/frontend/ui/reader/readerkopt.lua b/frontend/ui/reader/readerkopt.lua index a2e81f456..fc2c5a366 100644 --- a/frontend/ui/reader/readerkopt.lua +++ b/frontend/ui/reader/readerkopt.lua @@ -1,22 +1,26 @@ -ReaderKoptinterface = InputContainer:new{} +ReaderKoptListener = EventListener:new{} -function ReaderKoptinterface:onReadSettings(config) - self.normal_zoom_mode = config:readSetting("zoom_mode") or "page" +function ReaderKoptListener:onReadSettings(config) + self.normal_zoom_mode = config:readSetting("normal_zoom_mode") or "page" if self.document.configurable.text_wrap == 1 then - self.ui:handleEvent(Event:new("SetZoomMode", "page", "koptinterface")) + self.ui:handleEvent(Event:new("SetZoomMode", "page", "koptlistener")) else - self.ui:handleEvent(Event:new("SetZoomMode", self.normal_zoom_mode, "koptinterface")) + self.ui:handleEvent(Event:new("SetZoomMode", self.normal_zoom_mode, "koptlistener")) end end -function ReaderKoptinterface:onRestoreZoomMode(zoom_mode) - self.ui:handleEvent(Event:new("SetZoomMode", zoom_mode or self.normal_zoom_mode, "koptinterface")) +function ReaderKoptListener:onCloseDocument() + self.ui.doc_settings:saveSetting("normal_zoom_mode", self.normal_zoom_mode) +end + +function ReaderKoptListener:onRestoreZoomMode(zoom_mode) + self.ui:handleEvent(Event:new("SetZoomMode", zoom_mode or self.normal_zoom_mode, "koptlistener")) return true end -function ReaderKoptinterface:onSetZoomMode(zoom_mode, orig) - if orig ~= "koptinterface" then +function ReaderKoptListener:onSetZoomMode(zoom_mode, orig) + if orig ~= "koptlistener" then self.normal_zoom_mode = zoom_mode end end diff --git a/frontend/ui/readerui.lua b/frontend/ui/readerui.lua index c92edae01..6fb39e853 100644 --- a/frontend/ui/readerui.lua +++ b/frontend/ui/readerui.lua @@ -160,13 +160,13 @@ function ReaderUI:init() } table.insert(self, config_dialog) -- koptinterface controller - local koptinterface = ReaderKoptinterface:new{ + local koptlistener = ReaderKoptListener:new{ dialog = self.dialog, view = self[1], ui = self, document = self.document, } - table.insert(self, koptinterface) + table.insert(self, koptlistener) end --DEBUG(self.doc_settings) -- we only read settings after all the widgets are initialized