Firefox 54 compatiblity for locale service

This commit is contained in:
Dan Stillman 2017-05-25 19:49:20 -04:00
parent 4bdef6d24a
commit 7f52280a95
3 changed files with 31 additions and 18 deletions

View File

@ -248,7 +248,14 @@ function getTooltipText(button) {
let src = 'chrome://zotero/locale/zotero.properties';
let localeService = Components.classes['@mozilla.org/intl/nslocaleservice;1']
.getService(Components.interfaces.nsILocaleService);
let appLocale = localeService.getApplicationLocale();
Components.utils.import("resource://gre/modules/Services.jsm");
if (Services.locale.getAppLocale) {
var appLocale = Services.locale.getAppLocale();
}
// Fx <=53
else {
var appLocale = Services.locale.getApplicationLocale();
}
let stringBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"]
.getService(Components.interfaces.nsIStringBundleService);
let stringBundle = stringBundleService.createBundle(src, appLocale);

View File

@ -270,9 +270,13 @@ Components.utils.import("resource://gre/modules/Services.jsm");
var stringBundleService =
Components.classes["@mozilla.org/intl/stringbundle;1"]
.getService(Components.interfaces.nsIStringBundleService);
var localeService = Components.classes['@mozilla.org/intl/nslocaleservice;1'].
getService(Components.interfaces.nsILocaleService);
var appLocale = localeService.getApplicationLocale();
if (Services.locale.getAppLocale) {
var appLocale = Services.locale.getAppLocale();
}
// Fx <=53
else {
var appLocale = Services.locale.getApplicationLocale();
}
_localizedStringBundle = stringBundleService.createBundle(
"chrome://zotero/locale/zotero.properties", appLocale);
@ -1492,17 +1496,13 @@ Components.utils.import("resource://gre/modules/Services.jsm");
return this.collation;
}
var localeService = Components.classes["@mozilla.org/intl/nslocaleservice;1"]
.getService(Components.interfaces.nsILocaleService);
var appLocale = localeService.getApplicationLocale();
// Use nsICollation before Fx30
if (Zotero.platformMajorVersion < 30) {
var localeService = Components.classes["@mozilla.org/intl/nslocaleservice;1"]
.getService(Components.interfaces.nsILocaleService);
var collationFactory = Components.classes["@mozilla.org/intl/collation-factory;1"]
.getService(Components.interfaces.nsICollationFactory);
return this.collation = collationFactory.CreateCollation(appLocale);
Components.utils.import("resource://gre/modules/Services.jsm");
if (Services.locale.getAppLocale) {
var appLocale = Services.locale.getAppLocale();
}
// Fx <=53
else {
var appLocale = Services.locale.getApplicationLocale();
}
try {

View File

@ -7,9 +7,15 @@ var lastJumpToYearValue;
*/
function initLocaleBundle() {
var src = 'chrome://zotero/locale/timeline.properties';
var localeService = Components.classes['@mozilla.org/intl/nslocaleservice;1']
.getService(Components.interfaces.nsILocaleService);
var appLocale = localeService.getApplicationLocale();
Components.utils.import("resource://gre/modules/Services.jsm");
if (Services.locale.getAppLocale) {
var appLocale = Services.locale.getAppLocale();
}
// Fx <=53
else {
var appLocale = Services.locale.getApplicationLocale();
}
var stringBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"]
.getService(Components.interfaces.nsIStringBundleService);