mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
Dictionary: fix Fuzzy search setting appearance (#10721)
This commit is contained in:
@@ -102,6 +102,7 @@ function ReaderDictionary:init()
|
||||
self.disable_lookup_history = G_reader_settings:isTrue("disable_lookup_history")
|
||||
self.dicts_order = G_reader_settings:readSetting("dicts_order", {})
|
||||
self.dicts_disabled = G_reader_settings:readSetting("dicts_disabled", {})
|
||||
self.disable_fuzzy_search_fm = G_reader_settings:isTrue("disable_fuzzy_search")
|
||||
|
||||
if self.ui then
|
||||
self.ui.menu:registerToMainMenu(self)
|
||||
@@ -273,15 +274,29 @@ function ReaderDictionary:addToMainMenu(menu_items)
|
||||
sub_item_table_func = function() return self:_genDownloadDictionariesMenu() end,
|
||||
},
|
||||
{
|
||||
text = _("Enable fuzzy search"),
|
||||
text_func = function()
|
||||
local text = _("Enable fuzzy search")
|
||||
if G_reader_settings:nilOrFalse("disable_fuzzy_search") then
|
||||
text = text .. " ★"
|
||||
end
|
||||
return text
|
||||
end,
|
||||
checked_func = function()
|
||||
return self.disable_fuzzy_search ~= true
|
||||
if self.ui.doc_settings then
|
||||
return not self.disable_fuzzy_search
|
||||
end
|
||||
return not self.disable_fuzzy_search_fm
|
||||
end,
|
||||
callback = function()
|
||||
self.disable_fuzzy_search = not self.disable_fuzzy_search
|
||||
if self.ui.doc_settings then
|
||||
self.disable_fuzzy_search = not self.disable_fuzzy_search
|
||||
self.ui.doc_settings:saveSetting("disable_fuzzy_search", self.disable_fuzzy_search)
|
||||
else
|
||||
self.disable_fuzzy_search_fm = not self.disable_fuzzy_search_fm
|
||||
end
|
||||
end,
|
||||
hold_callback = function()
|
||||
self:toggleFuzzyDefault()
|
||||
hold_callback = function(touchmenu_instance)
|
||||
self:toggleFuzzyDefault(touchmenu_instance)
|
||||
end,
|
||||
separator = true,
|
||||
},
|
||||
@@ -416,10 +431,16 @@ function ReaderDictionary:onLookupWord(word, is_sane, boxes, highlight, link, tw
|
||||
logger.dbg("dict stripped word:", word)
|
||||
|
||||
self.highlight = highlight
|
||||
local disable_fuzzy_search
|
||||
if self.ui.doc_settings then
|
||||
disable_fuzzy_search = self.disable_fuzzy_search
|
||||
else
|
||||
disable_fuzzy_search = self.disable_fuzzy_search_fm
|
||||
end
|
||||
|
||||
-- Wrapped through Trapper, as we may be using Trapper:dismissablePopen() in it
|
||||
Trapper:wrap(function()
|
||||
self:stardictLookup(word, self.enabled_dict_names, not self.disable_fuzzy_search, boxes, link, tweak_buttons_func)
|
||||
self:stardictLookup(word, self.enabled_dict_names, not disable_fuzzy_search, boxes, link, tweak_buttons_func)
|
||||
end)
|
||||
return true
|
||||
end
|
||||
@@ -1199,7 +1220,6 @@ end
|
||||
function ReaderDictionary:onSaveSettings()
|
||||
if self.ui.doc_settings then
|
||||
self.ui.doc_settings:saveSetting("preferred_dictionaries", self.preferred_dictionaries)
|
||||
self.ui.doc_settings:saveSetting("disable_fuzzy_search", self.disable_fuzzy_search)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1228,7 +1248,7 @@ function ReaderDictionary:onTogglePreferredDict(dict)
|
||||
return true
|
||||
end
|
||||
|
||||
function ReaderDictionary:toggleFuzzyDefault()
|
||||
function ReaderDictionary:toggleFuzzyDefault(touchmenu_instance)
|
||||
local disable_fuzzy_search = G_reader_settings:isTrue("disable_fuzzy_search")
|
||||
UIManager:show(MultiConfirmBox:new{
|
||||
text = T(
|
||||
@@ -1251,12 +1271,14 @@ The current default (★) is enabled.]])
|
||||
end,
|
||||
choice1_callback = function()
|
||||
G_reader_settings:makeTrue("disable_fuzzy_search")
|
||||
touchmenu_instance:updateItems()
|
||||
end,
|
||||
choice2_text_func = function()
|
||||
return disable_fuzzy_search and _("Enable") or _("Enable (★)")
|
||||
end,
|
||||
choice2_callback = function()
|
||||
G_reader_settings:makeFalse("disable_fuzzy_search")
|
||||
touchmenu_instance:updateItems()
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user