mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
LuaSettings: Add a method to initialize a setting properly (#7371)
* LuaSettings/DocSettings: Updated readSetting API to allow proper initialization to default. Use it to initialize tables, e.g., fixing corner-cases in readerFooter that could prevent settings from being saved. (Fixes an issue reported on Gitter). * LuaSettings/DocSettings: Add simpler API than the the flip* ones to toggle boolean settings. * Update LuaSettings/DocSettigns usage throughout the codebase to use the dedicated boolean methods wher appropriate, and clean up some of the more mind-bending uses. * FileChooser: Implement an extended default exclusion list (fix #2360) * ScreenSaver: Refactor to avoid the pile of kludges this was threatening to become. Code should be easier to follow and use, and fallbacks now behave as expected (fix #4418).
This commit is contained in:
@@ -114,13 +114,13 @@ function ReaderZooming:onReadSettings(config)
|
||||
or G_reader_settings:readSetting("zoom_mode")
|
||||
or self.DEFAULT_ZOOM_MODE
|
||||
zoom_mode = util.arrayContains(self.available_zoom_modes, zoom_mode)
|
||||
and zoom_mode
|
||||
or self.DEFAULT_ZOOM_MODE
|
||||
and zoom_mode
|
||||
or self.DEFAULT_ZOOM_MODE
|
||||
self:setZoomMode(zoom_mode, true) -- avoid informative message on load
|
||||
for _, setting in ipairs(self.zoom_pan_settings) do
|
||||
self[setting] = config:readSetting(setting) or
|
||||
G_reader_settings:readSetting(setting) or
|
||||
self[setting]
|
||||
self[setting] = config:readSetting(setting)
|
||||
or G_reader_settings:readSetting(setting)
|
||||
or self[setting]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -433,8 +433,8 @@ function ReaderZooming:getZoom(pageno)
|
||||
zoom = self.zoom
|
||||
else
|
||||
local zoom_factor = self.ui.doc_settings:readSetting("zoom_factor")
|
||||
or G_reader_settings:readSetting("zoom_factor")
|
||||
or self.zoom_factor
|
||||
or G_reader_settings:readSetting("zoom_factor")
|
||||
or self.zoom_factor
|
||||
zoom = zoom_w * zoom_factor
|
||||
end
|
||||
if zoom and zoom > 10 and not Cache:willAccept(zoom * (self.dimen.w * self.dimen.h + 64)) then
|
||||
|
||||
Reference in New Issue
Block a user