translator: fix settings menu order (#12051)

reviewable/pr12067/r1
hius07 3 months ago committed by GitHub
parent 041ca074fb
commit 527fd05d25
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -231,11 +231,7 @@ function Translator:genSettingsMenu()
return T("%1 (%2)", lang_name, lang_key)
end,
checked_func = function()
if G_reader_settings:has(setting_name) then
return lang_key == G_reader_settings:readSetting(setting_name)
else
return lang_key == default_checked_item
end
return lang_key == (G_reader_settings:readSetting(setting_name) or default_checked_item)
end,
callback = function()
G_reader_settings:saveSetting(setting_name, lang_key)
@ -247,6 +243,26 @@ function Translator:genSettingsMenu()
return {
text = _("Translation settings"),
sub_item_table = {
{
text_func = function()
local __, name = self:getDocumentLanguage()
return T(_("Translate from book language: %1"), name or _("N/A"))
end,
help_text = _([[
With books that specify their main language in their metadata (most EPUBs and FB2s), enabling this option will make this language the source language. Otherwise, auto-detection or the selected language will be used.
This is useful:
- For books in a foreign language, where consistent translation is needed and words in other languages are rare.
- For books in familiar languages, to get definitions for words from the translation service.]]),
enabled_func = function()
return self:getDocumentLanguage() ~= nil
end,
checked_func = function()
return G_reader_settings:isTrue("translator_from_doc_lang")
end,
callback = function()
G_reader_settings:flipTrue("translator_from_doc_lang")
end,
},
{
text = _("Auto-detect source language"),
help_text = _("This setting is best suited for foreign text found in books written in your native language."),
@ -255,6 +271,7 @@ function Translator:genSettingsMenu()
end,
checked_func = function()
return G_reader_settings:nilOrTrue("translator_from_auto_detect")
and not (G_reader_settings:isTrue("translator_from_doc_lang") and self:getDocumentLanguage() ~= nil)
end,
callback = function()
G_reader_settings:flipNilOrTrue("translator_from_auto_detect")
@ -271,27 +288,6 @@ function Translator:genSettingsMenu()
and not (G_reader_settings:isTrue("translator_from_doc_lang") and self:getDocumentLanguage() ~= nil)
end,
sub_item_table = genLanguagesItems("translator_from_language"),
keep_menu_open = true,
},
{
text_func = function()
local __, name = self:getDocumentLanguage()
return T(_("Translate from book language: %1"), name or _("N/A"))
end,
help_text = _([[
With books that specify their main language in their metadata (most EPUBs and FB2s), enabling this option will make this language the source language. Otherwise, auto-detection or the selected language will be used.
This is useful:
- For books in a foreign language, where consistent translation is needed and words in other languages are rare.
- For books in familiar languages, to get definitions for words from the translation service.]]),
enabled_func = function()
return self:getDocumentLanguage() ~= nil
end,
checked_func = function()
return G_reader_settings:isTrue("translator_from_doc_lang")
end,
callback = function()
G_reader_settings:flipTrue("translator_from_doc_lang")
end,
separator = true,
},
{
@ -300,7 +296,6 @@ This is useful:
return T(_("Translate to: %1"), self:getLanguageName(lang, ""))
end,
sub_item_table = genLanguagesItems("translator_to_language", self:getTargetLanguage()),
keep_menu_open = true,
},
},
}

Loading…
Cancel
Save