Good! Wasn't aware there is "British English" in the language selection. Looks like all is working as expected.

Naoto

On 6/20/16 2:34 PM, Brent Christian wrote:
On 6/13/16 5:14 PM, Naoto Sato wrote:
On 13/06/2016 16:20, Brent Christian wrote:

Following the call to
setupMacOSXLocale() in ParseLocale()[1], mapLookup() is called to map
the language to a default country

So does this mean the new code will not honor the "Region" in the OSX's
system preference? For example, what happens if the user sets "UK" for
the "Region" in the preference, then the new code return "US" for the
country?

OS X's Region preference is reflected as the locale's "format", through
the "user.country.format" system property, and
Locale.getDefault(Locale.FORMAT).

The region is not reflected in the base "user.country" property or
Locale.getDefault().  As the existing source comment indicates, the
country is mapped to the default for the language, in this case, "US".

It seemed a bit strange to me, too, but my testing indicates this has
been the behavior since jdk 7u4.

I think that is a bug. It should adopt "UK" for the default/display
locale too. Probably this should be addressed in a separate bug.

After some more investigation, I don't believe there is a bug here.

The behavior I saw happened when using the basic
"English"/"French"/"German" languages, and changing the country with
Region.

OS X also provides regional options for the language itself (e.g.
"British English", "Canadian French", "Swiss German", etc) in Preferred
languages.  When using these languages, defaults are as expected (e.g.
reflected in "user.country") without remapping with mapLookup().

Thanks,
-Brent

Reply via email to