desktop/source/lib/init.cxx | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+)
New commits: commit 080d39e6832b0ebbf588b6d02ad00bba968d1360 Author: Mert Tumer <[email protected]> AuthorDate: Fri Jun 10 13:09:51 2022 +0300 Commit: Henry Castro <[email protected]> CommitDate: Mon Jan 30 17:23:24 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/+/145573 Tested-by: Jenkins Reviewed-by: Henry Castro <[email protected]> diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index db9a9632e4c3..78f03b8a0d43 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -136,6 +136,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> @@ -7036,6 +7037,37 @@ 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); + } + } +} } @@ -7359,6 +7391,7 @@ static int lo_initialize(LibreOfficeKit* pThis, const char* pAppPath, const char setCertificateDir(); setDeeplConfig(); + setLanguageToolConfig(); if (bNotebookbar) {
