From 601d2fc3d21980afdfdec10fe6fb14304cbc327f Mon Sep 17 00:00:00 2001 From: NiLuJe Date: Wed, 10 Mar 2021 02:14:26 +0100 Subject: [PATCH] Screensaver: Unbreak screensaver_stretch_images (#7403) * Screensaver: Unbreak screensaver_stretch_images We don't have real ternary operators in Lua, if the second argument evaluates to false, it doesn't work. Invert the test to avoid this pitfall. (c.f., http://lua-users.org/wiki/TernaryOperator). Fix #7402, regression since #7371 * Free a few similar constructs (incidentally, some of 'em also tweaked in #7371 ^^). --- frontend/apps/reader/modules/readertypeset.lua | 2 +- frontend/ui/screensaver.lua | 4 ++-- plugins/kosync.koplugin/main.lua | 12 ++++++------ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/frontend/apps/reader/modules/readertypeset.lua b/frontend/apps/reader/modules/readertypeset.lua index eceea9f79..487405757 100644 --- a/frontend/apps/reader/modules/readertypeset.lua +++ b/frontend/apps/reader/modules/readertypeset.lua @@ -111,7 +111,7 @@ function ReaderTypeset:onReadSettings(config) self.smooth_scaling = config:isTrue("smooth_scaling") else local global = G_reader_settings:readSetting("copt_smooth_scaling") - self.smooth_scaling = (global == nil or global == 0) and false or true + self.smooth_scaling = global == 1 and true or false end self:toggleImageScaling(self.smooth_scaling) diff --git a/frontend/ui/screensaver.lua b/frontend/ui/screensaver.lua index 73fccafa7..2f62cc6e3 100644 --- a/frontend/ui/screensaver.lua +++ b/frontend/ui/screensaver.lua @@ -518,7 +518,7 @@ function Screensaver:show() image_disposable = true, height = Screen:getHeight(), width = Screen:getWidth(), - scale_factor = G_reader_settings:isTrue("screensaver_stretch_images") and nil or 0, + scale_factor = G_reader_settings:nilOrFalse("screensaver_stretch_images") and 0 or nil, } elseif self.screensaver_type == "bookstatus" then local ReaderUI = require("apps/reader/readerui") @@ -540,7 +540,7 @@ function Screensaver:show() alpha = true, height = Screen:getHeight(), width = Screen:getWidth(), - scale_factor = G_reader_settings:isTrue("screensaver_stretch_images") and nil or 0, + scale_factor = G_reader_settings:nilOrFalse("screensaver_stretch_images") and 0 or nil, } elseif self.screensaver_type == "readingprogress" then widget = Screensaver.getReaderProgress() diff --git a/plugins/kosync.koplugin/main.lua b/plugins/kosync.koplugin/main.lua index 8ad6811ae..8c173ad27 100644 --- a/plugins/kosync.koplugin/main.lua +++ b/plugins/kosync.koplugin/main.lua @@ -694,13 +694,13 @@ function KOSync:saveSettings() auto_sync = self.kosync_auto_sync, pages_before_update = self.kosync_pages_before_update, whisper_forward = - (self.kosync_whisper_forward == SYNC_STRATEGY.DEFAULT_FORWARD - and nil - or self.kosync_whisper_forward), + (self.kosync_whisper_forward ~= SYNC_STRATEGY.DEFAULT_FORWARD + and self.kosync_whisper_forward + or nil), whisper_backward = - (self.kosync_whisper_backward == SYNC_STRATEGY.DEFAULT_BACKWARD - and nil - or self.kosync_whisper_backward), + (self.kosync_whisper_backward ~= SYNC_STRATEGY.DEFAULT_BACKWARD + and self.kosync_whisper_backward + or nil), } G_reader_settings:saveSetting("kosync", settings) end