OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** | 5 /// This provides facilities for Internationalization that are only available |
6 * This provides facilities for Internationalization that are only available | 6 /// when running in the web browser. You should import only one of this or |
7 * when running in the web browser. You should import only one of this or | 7 /// intl_standalone.dart. Right now the only thing provided here is the |
8 * intl_standalone.dart. Right now the only thing provided here is the | 8 /// ability to find the default locale from the browser. |
9 * ability to find the default locale from the browser. | |
10 */ | |
11 | 9 |
12 library intl_browser; | 10 library intl_browser; |
13 | 11 |
14 import "dart:async"; | 12 import "dart:async"; |
15 import "dart:html"; | 13 import "dart:html"; |
16 import "intl.dart"; | 14 import "intl.dart"; |
17 | 15 |
18 // TODO(alanknight): The need to do this by forcing the user to specially | 16 // TODO(alanknight): The need to do this by forcing the user to specially |
19 // import a particular library is a horrible hack, only done because there | 17 // import a particular library is a horrible hack, only done because there |
20 // seems to be no graceful way to do this at all. Either mirror access on | 18 // seems to be no graceful way to do this at all. Either mirror access on |
21 // dart2js or the ability to do spawnUri in the browser would be promising | 19 // dart2js or the ability to do spawnUri in the browser would be promising |
22 // as ways to get rid of this requirement. | 20 // as ways to get rid of this requirement. |
23 /** | 21 /// Find the system locale, accessed as window.navigator.language, and |
24 * Find the system locale, accessed as window.navigator.language, and | 22 /// set it as the default for internationalization operations in the |
25 * set it as the default for internationalization operations in the | 23 /// [Intl.systemLocale] variable. |
26 * [Intl.systemLocale] variable. | |
27 */ | |
28 Future<String> findSystemLocale() { | 24 Future<String> findSystemLocale() { |
29 Intl.systemLocale = Intl.canonicalizedLocale(window.navigator.language); | 25 Intl.systemLocale = Intl.canonicalizedLocale(window.navigator.language); |
30 return new Future.value(Intl.systemLocale); | 26 return new Future.value(Intl.systemLocale); |
31 } | 27 } |
OLD | NEW |