Index: safari/ext/common.js |
=================================================================== |
--- a/safari/ext/common.js |
+++ b/safari/ext/common.js |
@@ -85,17 +85,18 @@ |
var candidates = []; |
var defaultLocale = "en_US"; |
- var bits, i; |
- for (i = (bits = navigator.language.split("-")).length; i > 0; i--) |
- { |
- var locale = bits.slice(0, i).join("_"); |
- candidates.push(locale); |
+ // e.g. "ja-jp-mac" -> "ja", "jp", note that the part after the second |
+ // dash is dropped, since we only support language and region |
+ var [language, region] = navigator.language.split("-"); |
- if (locale == defaultLocale) |
- return candidates; |
- } |
+ if (region) |
+ candidates.push(language + "_" + region.toUpperCase()); |
- candidates.push(defaultLocale); |
+ candidates.push(language); |
+ |
+ if (candidates.indexOf(defaultLocale) == -1) |
+ candidates.push(defaultLocale); |
+ |
return candidates; |
}; |