Merge remote-tracking branch 'origin/onlyoffice_spellcheck' into 2026-autumn-test

This commit is contained in:
yflory 2026-08-14 16:12:57 +02:00
commit 5636a6fc4e

View File

@ -2171,46 +2171,51 @@ define([
}
//Ensure spellcheck set correctly (works only with localized language variants)
var defaultLanguageCode = getEditor().asc_getDefaultLanguage();
var editor = getEditor();
if (typeof editor.asc_getDefaultLanguage === 'function' && typeof editor.asc_setDefaultLanguage === 'function') {
const langToLocale = {
"en" : "en-us",
"fr" : "fr-fr",
"es" : "es-es",
"de" : "de-de"
};
var defaultLanguageCode = editor.asc_getDefaultLanguage();
const langCodeToLocale = {
7: "de-de",
9: "en-us",
10: "es-es",
12: "fr-fr"
};
const langToLocale = {
"en" : "en-us",
"fr" : "fr-fr",
"es" : "es-es",
"de" : "de-de"
};
const localeToLCID = Object.fromEntries(
Object.values(window.frames[0].AscCommon.g_aCultureInfos)
.map(info => [info.Name.toLowerCase(), info.LCID])
);
const langCodeToLocale = {
7: "de-de",
9: "en-us",
10: "es-es",
12: "fr-fr"
};
if (APP.startNew) {
var w = getWindow();
//If default language variant is generic - localize it
if (Object.keys(langToLocale).includes(lang)) {
lang = langToLocale[lang];
const localeToLCID = Object.fromEntries(
Object.values(window.frames[0].AscCommon.g_aCultureInfos)
.map(info => [info.Name.toLowerCase(), info.LCID])
);
if (APP.startNew) {
var w = getWindow();
//If default language variant is generic - localize it
if (Object.keys(langToLocale).includes(lang)) {
lang = langToLocale[lang];
}
var l = w.Common.util.LanguageInfo.getLocalLanguageCode(lang);
editor.asc_setDefaultLanguage(l);
} else {
//Setting the language every time document loads prevents spellcheck from 'switching off'
var localeLang = langCodeToLocale[defaultLanguageCode];
//If default language variant is generic - localize it
if (defaultLanguageCode < 1000 && localeLang) {
defaultLanguageCode = localeToLCID[localeLang];
}
editor.asc_setDefaultLanguage(defaultLanguageCode);
}
var l = w.Common.util.LanguageInfo.getLocalLanguageCode(lang);
getEditor().asc_setDefaultLanguage(l);
} else {
//Setting the language every time document loads prevents spellcheck from 'switching off'
var localeLang = langCodeToLocale[defaultLanguageCode];
//If default language variant is generic - localize it
if (defaultLanguageCode < 1000 && localeLang) {
defaultLanguageCode = localeToLCID[localeLang];
}
getEditor().asc_setDefaultLanguage(defaultLanguageCode);
}
}
sframeChan.event('EV_OO_DOC_READY');