summaryrefslogtreecommitdiff
path: root/svl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-12-20 16:02:18 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-12-22 20:08:51 +0100
commit1c7d3390022908cfbfd30f55e8c0c3b60a045da7 (patch)
tree07e34f151fbfc0c5ec39b2417f0e86f1e02d5c79 /svl
parent91d361604781f92640c9727add1e08cde854037e (diff)
request installation of langpack via packagekit
if ui is set to track the locale automatically and the current locale has no match in installed resources but has a match in the list of languages that libreoffice was compiled to contain so e.g. de_AT locale shouldn't trigger the installation of anything if langpack-de is already installed and yue_HK shouldn't trigger install of anything cause that not supported (at time of writing) for libreoffice put Fedora/RHEL/Ubuntu naming schemes in here. I moved the lang code from svl to svtools so I could use the restart dialog to prompt to restart after the langpack is installed, but packagekit's blocking mode seems to be no longer blocking and control returns immediately which is a change since the last time I played with this stuff, so drop the restart thing for now. The lack of a blocking modal also makes the "run this on idle when there's a toplevel window up and running" a bit futile, but lets keep that for now anyway. caolanm->rene: I know you'd disable this anyway, so Debian is left out, there's also config key Office/Common/PackageKit/EnableLangpackInstallation to disable this too. Change-Id: Ice731be539850338ccdd8af87839e0b4d83f01e7 Reviewed-on: https://gerrit.libreoffice.org/46856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svl')
-rw-r--r--svl/source/config/languageoptions.cxx33
1 files changed, 0 insertions, 33 deletions
diff --git a/svl/source/config/languageoptions.cxx b/svl/source/config/languageoptions.cxx
index 9f9fe4513819..74af0313c775 100644
--- a/svl/source/config/languageoptions.cxx
+++ b/svl/source/config/languageoptions.cxx
@@ -27,7 +27,6 @@
#include <rtl/instance.hxx>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <unotools/syslocale.hxx>
-#include <officecfg/System.hxx>
#ifdef _WIN32
#if !defined WIN32_LEAN_AND_MEAN
@@ -256,41 +255,9 @@ bool SvtSystemLanguageOptions::isKeyboardLayoutTypeInstalled(sal_Int16 scriptTyp
return isInstalled;
}
-
bool SvtSystemLanguageOptions::isCJKKeyboardLayoutInstalled() const
{
return isKeyboardLayoutTypeInstalled(css::i18n::ScriptType::ASIAN);
}
-OUString getInstalledLocaleForLanguage(css::uno::Sequence<OUString> const & installed, OUString const & locale)
-{
- if (locale.isEmpty())
- return OUString(); // do not attempt to resolve anything
-
- for (sal_Int32 i = 0; i != installed.getLength(); ++i) {
- if (installed[i] == locale) {
- return installed[i];
- }
- }
- std::vector<OUString> fallbacks(LanguageTag(locale).getFallbackStrings(false));
- for (OUString & rf : fallbacks) {
- for (sal_Int32 i = 0; i != installed.getLength(); ++i) {
- if (installed[i] == rf) {
- return installed[i];
- }
- }
- }
- return OUString();
-}
-
-OUString getInstalledLocaleForSystemUILanguage(const css::uno::Sequence<OUString>& rLocaleElementNames)
-{
- OUString locale = getInstalledLocaleForLanguage(rLocaleElementNames, officecfg::System::L10N::UILocale::get());
- if (locale.isEmpty())
- locale = getInstalledLocaleForLanguage(rLocaleElementNames, "en-US");
- if (locale.isEmpty() && rLocaleElementNames.hasElements())
- locale = rLocaleElementNames[0];
- return locale;
-}
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */