From 0a9169edfdbf2ee8e0c0043566d9b10e189c76f8 Mon Sep 17 00:00:00 2001 From: hius07 <62179190+hius07@users.noreply.github.com> Date: Sat, 5 Apr 2025 09:50:28 +0300 Subject: [PATCH] Dispatcher: fix action deleted arg (#13488) --- frontend/apps/reader/modules/readerfont.lua | 13 +++++++++---- frontend/apps/reader/modules/readerstyletweak.lua | 1 + frontend/dispatcher.lua | 3 ++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/frontend/apps/reader/modules/readerfont.lua b/frontend/apps/reader/modules/readerfont.lua index 592c6ef7c..ae2fc11f8 100644 --- a/frontend/apps/reader/modules/readerfont.lua +++ b/frontend/apps/reader/modules/readerfont.lua @@ -296,10 +296,15 @@ end function ReaderFont:onSetFont(face) if face and self.font_face ~= face then - self.font_face = face - self.ui.document:setFontFace(face) - -- signal readerrolling to update pos in new height - self.ui:handleEvent(Event:new("UpdatePos")) + for _, fontinfo in pairs(FontList.fontinfo) do + if fontinfo[1].name == face then + self.font_face = face + self.ui.document:setFontFace(face) + -- signal readerrolling to update pos in new height + self.ui:handleEvent(Event:new("UpdatePos")) + return + end + end end end diff --git a/frontend/apps/reader/modules/readerstyletweak.lua b/frontend/apps/reader/modules/readerstyletweak.lua index 17722ad8e..0afc18ee0 100644 --- a/frontend/apps/reader/modules/readerstyletweak.lua +++ b/frontend/apps/reader/modules/readerstyletweak.lua @@ -724,6 +724,7 @@ function ReaderStyleTweak:onToggleStyleTweak(tweak_id, item, no_notification) if type(tweak_id) == "table" then -- Dispatcher action 'Style tweak set on/off' tweak_id, toggle = unpack(tweak_id) end + if self.tweaks_by_id[tweak_id] == nil then return true end local enabled, g_enabled = self:isTweakEnabled(tweak_id) if enabled == toggle then return true end local text diff --git a/frontend/dispatcher.lua b/frontend/dispatcher.lua index f3a168266..1b8207d4c 100644 --- a/frontend/dispatcher.lua +++ b/frontend/dispatcher.lua @@ -655,7 +655,8 @@ function Dispatcher:getNameFromItem(item, settings, dont_show_value) settingsList[item].args, settingsList[item].toggle = settingsList[item].args_func() end local value_num = util.arrayContains(settingsList[item].args, value) - display_value = settingsList[item].toggle[value_num] or string.format("%.1f", value) + display_value = settingsList[item].toggle[value_num] + or (type(value) == "number" and string.format("%.1f", value) or value) end elseif category == "absolutenumber" then display_value = tostring(value)