[SSE] Fix spell checking settings

This commit is contained in:
Julia Svinareva 2019-11-28 10:46:49 +03:00
parent 8c32885042
commit 997eb2f678
2 changed files with 12 additions and 10 deletions

View file

@ -126,7 +126,9 @@ define([
loadLanguages: function () { loadLanguages: function () {
var me = this; var me = this;
Common.Utils.InternalSettings.set("sse-spellcheck-locale", Common.localStorage.getItem("sse-spellcheck-locale")); if (this._initSettings) {
Common.Utils.InternalSettings.set("sse-spellcheck-locale", Common.localStorage.getItem("sse-spellcheck-locale"));
}
if (this.languages && this.languages.length>0) { if (this.languages && this.languages.length>0) {
var langs = [], info; var langs = [], info;
@ -173,7 +175,7 @@ define([
return model.get('shortName').indexOf(value)==0; return model.get('shortName').indexOf(value)==0;
}); });
} }
combo.setValue(item ? item.get('value') : langs[0].value); combo.setValue(item ? item.get('value') : this.langs[0].value);
value = combo.getValue(); value = combo.getValue();
} else { } else {
combo.setValue(Common.util.LanguageInfo.getLocalLanguageName(value)[1]); combo.setValue(Common.util.LanguageInfo.getLocalLanguageName(value)[1]);
@ -181,7 +183,7 @@ define([
} }
if (this.api) { if (this.api) {
this.api.asc_setDefaultLanguage(value); this.api.asc_setDefaultLanguage(value);
if (value !== sessionValue) { if (value !== parseInt(sessionValue)) {
Common.Utils.InternalSettings.set("sse-spellcheck-locale", value); Common.Utils.InternalSettings.set("sse-spellcheck-locale", value);
} }
} }

View file

@ -1041,27 +1041,27 @@ define([
}, },
updateSettings: function() { updateSettings: function() {
var lang = SSE.getController('Spellcheck').loadLanguages(), var arrLang = SSE.getController('Spellcheck').loadLanguages(),
allLangs = lang[0], allLangs = arrLang[0],
lang = lang[1]; langs = arrLang[1];
var sessionValue = Common.Utils.InternalSettings.get("sse-spellcheck-locale"), var sessionValue = Common.Utils.InternalSettings.get("sse-spellcheck-locale"),
value; value;
if (sessionValue) if (sessionValue)
value = parseInt(sessionValue); value = parseInt(sessionValue);
else else
value = this.mode.lang ? parseInt(Common.util.LanguageInfo.getLocalLanguageCode(this.mode.lang)) : 0x0409; value = this.mode.lang ? parseInt(Common.util.LanguageInfo.getLocalLanguageCode(this.mode.lang)) : 0x0409;
if (lang && lang.length > 0) { if (langs && langs.length > 0) {
this.cmbDictionaryLanguage.setData(lang); this.cmbDictionaryLanguage.setData(langs);
var item = this.cmbDictionaryLanguage.store.findWhere({value: value}); var item = this.cmbDictionaryLanguage.store.findWhere({value: value});
if (!item && allLangs[value]) { if (!item && allLangs[value]) {
value = allLangs[value][0].split(/[\-\_]/)[0]; value = allLangs[value][0].split(/[\-\_]/)[0];
item = combo.store.find(function(model){ item = this.cmbDictionaryLanguage.store.find(function(model){
return model.get('shortName').indexOf(value)==0; return model.get('shortName').indexOf(value)==0;
}); });
} }
this.cmbDictionaryLanguage.setValue(item ? item.get('value') : langs[0].value); this.cmbDictionaryLanguage.setValue(item ? item.get('value') : langs[0].value);
value = this.cmbDictionaryLanguage.getValue(); value = this.cmbDictionaryLanguage.getValue();
if (value !== sessionValue) { if (value !== parseInt(sessionValue)) {
Common.Utils.InternalSettings.set("sse-spellcheck-locale", value); Common.Utils.InternalSettings.set("sse-spellcheck-locale", value);
} }
} else { } else {