mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
save/restore view mode and embedded css mode
This commit is contained in:
@@ -10,7 +10,8 @@ CreOptions = {
|
||||
name_text = "Screen Mode",
|
||||
toggle = {"portrait", "landscape"},
|
||||
args = {"portrait", "landscape"},
|
||||
default_arg = Screen:getScreenMode(),
|
||||
default_arg = "portrait",
|
||||
current_func = function() return Screen:getScreenMode() end,
|
||||
event = "SetScreenMode",
|
||||
}
|
||||
}
|
||||
@@ -35,10 +36,11 @@ CreOptions = {
|
||||
name = "font_size",
|
||||
item_text = {"Aa", "Aa", "Aa", "Aa", "Aa", "Aa", "Aa", "Aa"},
|
||||
item_align_center = 1.0,
|
||||
spacing = Screen:getWidth()*0.03,
|
||||
spacing = 15,
|
||||
item_font_size = {18, 20, 22, 24, 29, 33, 39, 44},
|
||||
values = {18, 20, 22, 24, 29, 33, 39, 44},
|
||||
default_value = 22,
|
||||
args = {18, 20, 22, 24, 29, 33, 39, 44},
|
||||
default_value = 1,
|
||||
event = "SetFontSize",
|
||||
},
|
||||
}
|
||||
@@ -72,7 +74,9 @@ CreOptions = {
|
||||
{
|
||||
name = "view_mode",
|
||||
name_text = "View mode",
|
||||
item_text = {"scroll", "page"},
|
||||
toggle = {"scroll", "page"},
|
||||
values = {1, 0},
|
||||
default_value = 0,
|
||||
args = {"scroll", "page"},
|
||||
default_arg = "page",
|
||||
event = "SetViewMode",
|
||||
@@ -80,8 +84,10 @@ CreOptions = {
|
||||
{
|
||||
name = "embedded_css",
|
||||
name_text = "Embedded style",
|
||||
item_text = {"toggle"},
|
||||
args = {1},
|
||||
toggle = {"on", "off"},
|
||||
values = {1, 0},
|
||||
default_value = 0,
|
||||
args = {1, 0},
|
||||
default_arg = nil,
|
||||
event = "ToggleEmbeddedStyleSheet",
|
||||
},
|
||||
|
||||
21
frontend/ui/reader/readercopt.lua
Normal file
21
frontend/ui/reader/readercopt.lua
Normal file
@@ -0,0 +1,21 @@
|
||||
|
||||
ReaderCoptListener = EventListener:new{}
|
||||
|
||||
function ReaderKoptListener:onReadSettings(config)
|
||||
local embedded_css = config:readSetting("copt_embedded_css")
|
||||
if embedded_css == 1 then
|
||||
table.insert(self.ui.postInitCallback, function()
|
||||
self.ui:handleEvent(Event:new("ToggleEmbeddedStyleSheet"))
|
||||
end)
|
||||
end
|
||||
local view_mode = config:readSetting("copt_view_mode")
|
||||
if view_mode == 0 then
|
||||
table.insert(self.ui.postInitCallback, function()
|
||||
self.ui:handleEvent(Event:new("SetViewMode", "page"))
|
||||
end)
|
||||
elseif view_mode == 1 then
|
||||
table.insert(self.ui.postInitCallback, function()
|
||||
self.ui:handleEvent(Event:new("SetViewMode", "scroll"))
|
||||
end)
|
||||
end
|
||||
end
|
||||
@@ -13,6 +13,7 @@ require "ui/reader/readermenu"
|
||||
require "ui/reader/readerconfig"
|
||||
require "ui/reader/readercropping"
|
||||
require "ui/reader/readerkopt"
|
||||
require "ui/reader/readercopt"
|
||||
|
||||
--[[
|
||||
This is an abstraction for a reader interface
|
||||
@@ -159,7 +160,7 @@ function ReaderUI:init()
|
||||
ui = self
|
||||
}
|
||||
table.insert(self, config_dialog)
|
||||
-- koptinterface controller
|
||||
-- kopt option controller
|
||||
local koptlistener = ReaderKoptListener:new{
|
||||
dialog = self.dialog,
|
||||
view = self[1],
|
||||
@@ -167,6 +168,14 @@ function ReaderUI:init()
|
||||
document = self.document,
|
||||
}
|
||||
table.insert(self, koptlistener)
|
||||
-- cre option controller
|
||||
local coptlistener = ReaderCoptListener:new{
|
||||
dialog = self.dialog,
|
||||
view = self[1],
|
||||
ui = self,
|
||||
document = self.document,
|
||||
}
|
||||
table.insert(self, coptlistener)
|
||||
end
|
||||
--DEBUG(self.doc_settings)
|
||||
-- we only read settings after all the widgets are initialized
|
||||
|
||||
Reference in New Issue
Block a user