# HG changeset patch # User Jaroslav Tulach # Date 1424592053 -3600 # Node ID 0dee66ee08d91cbbfd267ad85f45b140c93dc9f5 # Parent b6e926f68703d4606753d42376c4e1b420bfc92d# Parent 681e61714a1dc07e36ee768766454e5362fbf3fb Merging in the Locale.getDefault fix diff -r b6e926f68703 -r 0dee66ee08d9 rt/emul/compact/src/main/java/java/util/Locale.java --- a/rt/emul/compact/src/main/java/java/util/Locale.java Mon Feb 09 21:30:04 2015 +0100 +++ b/rt/emul/compact/src/main/java/java/util/Locale.java Sun Feb 22 09:00:53 2015 +0100 @@ -45,6 +45,7 @@ import java.io.ObjectOutputStream; import java.io.ObjectStreamField; import java.io.Serializable; +import org.apidesign.bck2brwsr.core.JavaScriptBody; /** * A Locale object represents a specific geographical, political, @@ -634,8 +635,20 @@ * @return the default locale for this instance of the Java Virtual Machine */ public static Locale getDefault() { + String lang = language(); + if (lang != null) { + String[] arr = lang.split("-"); + return new Locale(arr[0], arr[1]); + } return Locale.US; } + + @JavaScriptBody(args = {}, body = "" + + "if (navigator.language) return navigator.language;\n" + + "if (navigator.userLangage) return navigator.userLangage;\n" + + "return null;\n" + ) + private static native String language(); /** * Gets the current value of the default locale for the specified Category @@ -654,7 +667,7 @@ * @since 1.7 */ public static Locale getDefault(Locale.Category category) { - return Locale.US; + return getDefault(); } /**