desktop/source/lib/init.cxx | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-)
New commits: commit 08ab67125bf1b88c3d4aea81c90d87da5bc30feb Author: Mert Tumer <[email protected]> AuthorDate: Fri Jun 10 13:09:51 2022 +0300 Commit: Andras Timar <[email protected]> CommitDate: Sat Jan 28 09:22:22 2023 +0000 lok: set LanguageTool config parameters from environment Signed-off-by: Mert Tumer <[email protected]> Change-Id: Ic7343439536abee626c269d2a824bb36f9abc40f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135583 Tested-by: Jenkins CollaboraOffice <[email protected]> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145603 Reviewed-by: Andras Timar <[email protected]> Tested-by: Andras Timar <[email protected]> diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index fdb420dfb13d..e562099082d3 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -131,6 +131,7 @@ #include <svtools/ctrltool.hxx> #include <svtools/langtab.hxx> #include <svtools/deeplcfg.hxx> +#include <svtools/languagetoolcfg.hxx> #include <vcl/fontcharmap.hxx> #ifdef IOS #include <vcl/sysdata.hxx> @@ -7016,7 +7017,36 @@ void setDeeplConfig() } } - +void setLanguageToolConfig() +{ + const char* pEnabled = ::getenv("LANGUAGETOOL_ENABLED"); + const char* pBaseUrlString = ::getenv("LANGUAGETOOL_BASEURL"); + const char* pUsername = ::getenv("LANGUAGETOOL_USERNAME"); + const char* pApikey = ::getenv("LANGUAGETOOL_APIKEY"); + if (pEnabled && pBaseUrlString) + { + OUString aEnabled = OStringToOUString(pEnabled, RTL_TEXTENCODING_UTF8); + if (aEnabled != "true") + return; + OUString aBaseUrl = OStringToOUString(pBaseUrlString, RTL_TEXTENCODING_UTF8); + try + { + SvxLanguageToolOptions& rLanguageOpts = SvxLanguageToolOptions::Get(); + rLanguageOpts.setBaseURL(aBaseUrl); + rLanguageOpts.setEnabled(true); + if (pUsername && pApikey) + { + OUString aUsername = OStringToOUString(pUsername, RTL_TEXTENCODING_UTF8); + OUString aApiKey = OStringToOUString(pApikey, RTL_TEXTENCODING_UTF8); + rLanguageOpts.setUsername(aUsername); + rLanguageOpts.setApiKey(aApiKey); + } + } + catch(uno::Exception const& rException) + { + SAL_WARN("lok", "Failed to set LanguageTool API settings: " << rException.Message); + } + } } static int lo_initialize(LibreOfficeKit* pThis, const char* pAppPath, const char* pUserProfileUrl) @@ -7332,6 +7362,7 @@ static int lo_initialize(LibreOfficeKit* pThis, const char* pAppPath, const char setCertificateDir(); setDeeplConfig(); + setLanguageToolConfig(); if (bNotebookbar) {
