summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Repository.mk2
-rw-r--r--comphelper/source/misc/lok.cxx2
-rw-r--r--configure.ac4
-rw-r--r--ios/CustomTarget_iOS_setup.mk8
-rw-r--r--lingucomponent/Module_lingucomponent.mk2
-rw-r--r--lingucomponent/source/lingutil/lingutil.cxx13
-rw-r--r--lingucomponent/source/spellcheck/macosxspell/macspellimp.mm7
-rw-r--r--postprocess/Rdb_services.mk2
-rwxr-xr-xsolenv/bin/native-code.py2
9 files changed, 28 insertions, 14 deletions
diff --git a/Repository.mk b/Repository.mk
index 2d9bb907dd74..43da9de09616 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -419,7 +419,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
simplecanvas \
slideshow \
sot \
- $(if $(filter-out iOS,$(OS)),spell) \
+ spell \
$(if $(DISABLE_GUI),,spl) \
storagefd \
$(call gb_Helper_optional,SCRIPTING,stringresource) \
diff --git a/comphelper/source/misc/lok.cxx b/comphelper/source/misc/lok.cxx
index 77c8c13a7e82..208fe7bb25df 100644
--- a/comphelper/source/misc/lok.cxx
+++ b/comphelper/source/misc/lok.cxx
@@ -214,7 +214,7 @@ bool isWhitelistedLanguage(const OUString& lang)
if (!isActive())
return true;
-#ifdef ANDROID
+#if defined ANDROID || defined IOS
(void) lang;
return true;
#else
diff --git a/configure.ac b/configure.ac
index e36325456c82..d71a127b92e5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10172,9 +10172,7 @@ dnl ===================================================================
dnl Check for system hunspell
dnl ===================================================================
AC_MSG_CHECKING([which libhunspell to use])
-if test "$_os" = iOS; then
- AC_MSG_RESULT([none])
-elif test "$with_system_hunspell" = "yes"; then
+if test "$with_system_hunspell" = "yes"; then
AC_MSG_RESULT([external])
SYSTEM_HUNSPELL=TRUE
AC_LANG_PUSH([C++])
diff --git a/ios/CustomTarget_iOS_setup.mk b/ios/CustomTarget_iOS_setup.mk
index c8a9ccccb72f..53ea70f1306a 100644
--- a/ios/CustomTarget_iOS_setup.mk
+++ b/ios/CustomTarget_iOS_setup.mk
@@ -72,6 +72,14 @@ $(IOSGEN)/native-code.h: $(BUILDDIR)/config_host.mk \
mkdir -p $(IOSRES)/share/fonts
cp -R $(INSTDIR)/share/fonts/truetype $(IOSRES)/share/fonts
cp -R $(INSTDIR)/share/gallery $(IOSRES)/share
+ mkdir -p $(IOSRES)/share/spell
+ # Install the Swiss German dictionary and use it for Liechtenstein, too
+ if test -d $(INSTDIR)/share/extensions/dict-de; then \
+ cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_CH.aff; \
+ cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_CH.dic; \
+ cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.aff $(IOSRES)/share/spell/de_LI.aff; \
+ cp $(INSTDIR)/share/extensions/dict-de/de_CH_frami.dic $(IOSRES)/share/spell/de_LI.dic; \
+ fi
cp -R $(INSTDIR)/share/palette $(IOSRES)/share
cp -R $(INSTDIR)/share/fingerprint $(IOSRES)/share
cp $(SRCDIR)/ios/welcome.odt $(IOSRES)
diff --git a/lingucomponent/Module_lingucomponent.mk b/lingucomponent/Module_lingucomponent.mk
index 9dabeb155673..3f8bcb026fa2 100644
--- a/lingucomponent/Module_lingucomponent.mk
+++ b/lingucomponent/Module_lingucomponent.mk
@@ -15,7 +15,7 @@ $(eval $(call gb_Module_add_targets,lingucomponent,\
Library_hyphen \
$(if $(filter-out iOS,$(OS)),Library_lnth) \
$(if $(filter iOS MACOSX,$(OS)),Library_MacOSXSpell) \
- $(if $(filter-out iOS,$(OS)),Library_spell) \
+ Library_spell \
StaticLibrary_ulingu \
Library_numbertext \
))
diff --git a/lingucomponent/source/lingutil/lingutil.cxx b/lingucomponent/source/lingutil/lingutil.cxx
index 76c79aba698a..5ef22bbeff34 100644
--- a/lingucomponent/source/lingutil/lingutil.cxx
+++ b/lingucomponent/source/lingutil/lingutil.cxx
@@ -34,6 +34,7 @@
#include <unotools/bootstrap.hxx>
#include <unotools/lingucfg.hxx>
#include <unotools/pathoptions.hxx>
+#include <rtl/bootstrap.hxx>
#include <rtl/ustring.hxx>
#include <rtl/string.hxx>
#include <rtl/tencinfo.h>
@@ -58,7 +59,7 @@ OString Win_AddLongPathPrefix( const OString &rPathName )
}
#endif //defined(WNT)
-#ifdef SYSTEM_DICTS
+#if defined SYSTEM_DICTS || defined IOS
// find old style dictionaries in system directories
static void GetOldStyleDicsInDir(
OUString const & aSystemDir, OUString const & aFormatName,
@@ -143,7 +144,7 @@ std::vector< SvtLinguConfigDictionaryEntry > GetOldStyleDics( const char *pDicTy
OUString aFormatName;
OUString aDicExtension;
-#ifdef SYSTEM_DICTS
+#if defined SYSTEM_DICTS || defined IOS
OUString aSystemDir;
OUString aSystemPrefix;
OUString aSystemSuffix;
@@ -155,6 +156,10 @@ std::vector< SvtLinguConfigDictionaryEntry > GetOldStyleDics( const char *pDicTy
#ifdef SYSTEM_DICTS
aSystemDir = DICT_SYSTEM_DIR;
aSystemSuffix = aDicExtension;
+#elif defined IOS
+ aSystemDir = "$BRAND_BASE_DIR/share/spell";
+ rtl::Bootstrap::expandMacros(aSystemDir);
+ aSystemSuffix = ".dic";
#endif
}
else if (strcmp( pDicType, "HYPH" ) == 0)
@@ -181,11 +186,12 @@ std::vector< SvtLinguConfigDictionaryEntry > GetOldStyleDics( const char *pDicTy
if (aFormatName.isEmpty() || aDicExtension.isEmpty())
return aRes;
-#ifdef SYSTEM_DICTS
+#if defined SYSTEM_DICTS || defined IOS
// set of languages to remember the language where it is already
// decided to make use of the dictionary.
std::set< OUString > aDicLangInUse;
+#ifndef IOS
// follow the hunspell tool's example and check DICPATH for preferred dictionaries
rtl_uString * pSearchPath = nullptr;
osl_getEnvironment(OUString("DICPATH").pData, &pSearchPath);
@@ -220,6 +226,7 @@ std::vector< SvtLinguConfigDictionaryEntry > GetOldStyleDics( const char *pDicTy
}
while (nIndex != -1);
}
+#endif
// load system directories last so that DICPATH prevails
GetOldStyleDicsInDir(aSystemDir, aFormatName, aSystemSuffix, aSystemPrefix,
diff --git a/lingucomponent/source/spellcheck/macosxspell/macspellimp.mm b/lingucomponent/source/spellcheck/macosxspell/macspellimp.mm
index ef3d5decb013..ab463e7d43aa 100644
--- a/lingucomponent/source/spellcheck/macosxspell/macspellimp.mm
+++ b/lingucomponent/source/spellcheck/macosxspell/macspellimp.mm
@@ -138,12 +138,13 @@ Sequence< Locale > SAL_CALL MacSpellChecker::getLocales()
}
}
#ifdef IOS
- // iOS says it has specifically de_DE, but let's assume it is good enough for the other
- // variants, too, for now.
+ // iOS says it has specifically de_DE. Let's assume it is good enough for German as
+ // written in Austria, Belgium, and Luxembourg, too. (Not for German in Switzerland and
+ // Liechtenstein. For those you need to bundle the myspell dictionary.)
else if ([pLangStr isEqualToString:@"de_DE"])
{
const std::vector<NSString*> aDE
- { @"AT", @"BE", @"CH", @"DE", @"LI", @"LU" };
+ { @"AT", @"BE", @"DE", @"LU" };
for (auto c: aDE)
{
pLangStr = [@"de_" stringByAppendingString: c];
diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk
index e28de2ef751a..084af4b9c1da 100644
--- a/postprocess/Rdb_services.mk
+++ b/postprocess/Rdb_services.mk
@@ -50,8 +50,8 @@ $(eval $(call gb_Rdb_add_components,services,\
i18npool/util/i18npool \
lingucomponent/source/hyphenator/hyphen/hyphen \
lingucomponent/source/languageguessing/guesslang \
+ lingucomponent/source/spellcheck/spell/spell \
$(if $(filter-out iOS,$(OS)), \
- lingucomponent/source/spellcheck/spell/spell \
lingucomponent/source/thesaurus/libnth/lnth \
) \
lingucomponent/source/numbertext/numbertext \
diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index 0383463a64c3..d7c3582fd907 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -58,7 +58,7 @@ core_factory_list = [
("libxmlscriptlo.a", "xmlscript_component_getFactory"),
("libmcnttype.a", "mcnttype_component_getFactory"),
("libvcllo.a", "vcl_component_getFactory"),
- ("libspelllo.a", "spell_component_getFactory", "#ifndef IOS"),
+ ("libspelllo.a", "spell_component_getFactory"),
("libpdffilterlo.a", "pdffilter_component_getFactory"),
("libsvgiolo.a", "svgio_component_getFactory"),
("libsvtlo.a", "svt_component_getFactory"),