From 5f59ee64175b0b7da81950af23e511cfc8964236 Mon Sep 17 00:00:00 2001 From: hius07 <62179190+hius07@users.noreply.github.com> Date: Thu, 18 May 2023 22:57:16 +0300 Subject: [PATCH] readerhighlight: fix translate (#10451) Fix translation for books without "language" in properties (it is "", Translator expects nil). Regression after #10438. --- frontend/apps/reader/modules/readerhighlight.lua | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/frontend/apps/reader/modules/readerhighlight.lua b/frontend/apps/reader/modules/readerhighlight.lua index 609c1bc10..6ebeea2b6 100644 --- a/frontend/apps/reader/modules/readerhighlight.lua +++ b/frontend/apps/reader/modules/readerhighlight.lua @@ -1383,10 +1383,17 @@ dbg:guard(ReaderHighlight, "translate", "translate must not be called with nil selected_text!") end) -function ReaderHighlight:onTranslateText(text, page, index) +function ReaderHighlight:getDocumentLanguage() local doc_props = self.ui.doc_settings:readSetting("doc_props") local doc_lang = doc_props and doc_props.language - Translator:showTranslation(text, true, doc_lang, nil, true, page, index) + if doc_lang == "" then + doc_lang = nil + end + return doc_lang +end + +function ReaderHighlight:onTranslateText(text, page, index) + Translator:showTranslation(text, true, self:getDocumentLanguage(), nil, true, page, index) end function ReaderHighlight:onTranslateCurrentPage() @@ -1413,9 +1420,7 @@ function ReaderHighlight:onTranslateCurrentPage() self.ui.document.configurable.text_wrap = is_reflow end if res and res.text then - local doc_props = self.ui.doc_settings:readSetting("doc_props") - local doc_lang = doc_props and doc_props.language - Translator:showTranslation(res.text, false, doc_lang) + Translator:showTranslation(res.text, false, self:getDocumentLanguage()) end end