Граф коммитов

4099 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Kew b1d22b8fd2 Bug 734008 - DeCOMtaminate nsILanguageAtomService, make it a non-refcounted singleton and clean up various call sites. r=m_kato 2015-04-03 21:39:23 +02:00
Manish Goregaokar bf23cb1d19 Bug 1362599 - Guard against threadsafety issues in lang group stuff. r=heycam 2017-05-20 21:44:37 +02:00
Zibi Braniecki 060e591797 Bug 1358159 - Handle string terminator for GetLocaleInfoEx. r=jfkthame
MozReview-Commit-ID: 4Hu1N4gNobx

--HG--
extra : rebase_source : bc90fc051da8bb7bc024b3be0575c35f537046db
2017-05-10 12:42:26 -07:00
Jonathan Kew ed530ec201 Bug 1353000 - Preparatory patch, explicitly make the Script enum a 16-bit type, so we can add a field to gfxShapedWord without making it bigger. r=jrmuizel 2017-04-12 14:55:10 +01:00
Jonathan Kew 26f06fc0de Bug 1358275 - Preliminary cleanup: refactor nsTextFragment::UpdateBidiFlag(), moving its logic into nsBidiUtils function HasRTLChars() and making that function more precise in the process. r=dholbert 2017-04-26 23:25:48 +01:00
Zibi Braniecki 7ff88a7209 Bug 1348042 - Refactor LocaleService to operate in server-client mode. r=Ehsan,qdot
LocaleService serves two main functions. It is a central place for all code in the
engine to learn about locales, but it also does the language negotiation and selection.

The former is relevant in all processes, but the latter should only be performed
by the "main" process. In case of current Desktop Firefox, the parent process
is the one performing all the language negotiation, and content processes should
operate in the "client" mode.
In Fennec, there's a Java app on top of Gecko which should work as a "server"
and then all processes, including parent process of Gecko is merely a "client" for that.

This refactor finalizes this duality making it easily configurable to define in
which mode a given LocaleService operates.

The server-client model allows all clients to stay in sync with the server,
but operate transparently for all callers just returning the right values.

In order to initialize LocaleService in the client mode in child process with the
right locales I'm adding the list of app locales to the XPCOMInitData,
and then fire LocaleService::SetAppLocales in the child process initialization.

In order to keep the list up to date, I'm adding intl:app-locales-changed to
the list of observed topics, and when triggered, I send the updated list
to the child process, which updates LocaleService::SetAppLocales with the new
list.

MozReview-Commit-ID: K9X6berF3IO

--HG--
extra : rebase_source : ca5e502d064023fddfd63fe6fe5eccefce8dee52
2017-03-26 07:09:45 +02:00
Wes Kocher 4f3c2d9829 Merge m-c to autoland, a=merge
MozReview-Commit-ID: DPzfAm14Tdx
2017-04-20 15:52:28 -07:00
Dan Banner a7f5988aec bug 1351657 - Stop shipping langGroups.properties as it is unused. r=florian
MozReview-Commit-ID: L601YNiOVBc

--HG--
extra : rebase_source : c1bf3647c41d2eee3738175d266ca52f80c14d74
2017-04-20 13:34:52 +01:00
Chris Peterson 884429fb68 Bug 1356843 - Fix -Wcomma warning in intl/uconv/util/nsUCSupport.cpp. r=dholbert
clang's -Wcomma warning warns about suspicious use of the comma operator such as between two statements.

intl/uconv/util/nsUCSupport.cpp:552:34 [-Wcomma] possible misuse of comma operator here

MozReview-Commit-ID: Emk05qDJHbm

--HG--
extra : rebase_source : cfc7b16894f584f1e444e3296ab15c8d46f09698
extra : source : d61747509865b526772da48f94f9e1ba0548e6d3
2017-04-08 01:05:19 -07:00
Zibi Braniecki c4783f92b9 Bug 1005640 - Flush StringBundle cache when app-locales change. r=valentin
StringBundle caches bundles, so when language chain changes we should
flush the cache to enable new strings to be loaded.
This also affects localized prefs like intl.accept_languages.

Then in HttpHandler we have to mark the value as dirty so that next
time it's called it actually recalculates using flushed string bundle
with the new locale.

MozReview-Commit-ID: DKWEDUli4yH

--HG--
extra : rebase_source : 75ecc4204deca066d7492d1494492a91685f36be
2017-04-18 01:03:05 -07:00
Zibi Braniecki a1a4f0b7c9 Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK

--HG--
extra : rebase_source : 883a91b249b6953b7872bfb9a8851e8be7257c7b
2017-03-11 18:43:11 -08:00
Sebastian Hengst 7b30105d39 Backed out changeset 60d72c2dd49d (bug 1346616) for eslint failure in DirectoryLinksProvider.jsm. r=backout on a CLOSED TREE 2017-04-18 00:48:16 +02:00
Zibi Braniecki cce53c69bc Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK

--HG--
extra : rebase_source : 2f166cf1746f389a035f7cf557edcadeacb10fa0
2017-03-11 18:43:11 -08:00
Zibi Braniecki efe35ec119 Bug 1356718 - Query gtk settings schemas to avoid crashing when schema is missing. r=jfkthame
MozReview-Commit-ID: 2rqO4XpLbfO

--HG--
extra : rebase_source : a6f20cefa04c37bf73574f9065a63e375891bd03
2017-04-16 00:13:07 -07:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Sebastian Hengst a07223d699 Backed out changeset 322fde2d53bf (bug 1356569) so bug 1355161 can be backed out. r=backout 2017-04-14 23:39:22 +02:00
Florian Queze 95d4d20c17 Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Jorg K 1a3b715cfd Bug 1355465 - Enhance TestDateTimeFormat.cpp with non-en-US locale. r=emk
--HG--
extra : rebase_source : 5022b135df56ccea709f1c10be6fd0f54cea9a55
2017-04-11 11:07:00 -04:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Jorg K 787cd41f0e Bug 1351427 - Use OSPreferences for C++ date/time formats. r=emk 2017-04-13 17:17:40 +02:00
Zibi Braniecki ccbf32129b Bug 1354055 - Don't cache wrong result in OSPreferences::ReadSystemLocales on Android. r=jfkthame,rnewman
MozReview-Commit-ID: Li7wUQnC9Gz

--HG--
extra : rebase_source : 5cd5794e16dfdd9f3534fab0c83523f1abb55e6e
2017-04-06 13:00:02 +02:00
Zibi Braniecki ddeeddec79 Bug 1355308 - Use "User Locale" for ReadDateTimePattern LanguageMatch on Windows. r=jfkthame
MozReview-Commit-ID: G8BA0NYF27P

--HG--
extra : rebase_source : af8cae16d683616c1cdac9576bc7740e1f69f961
2017-04-10 19:36:12 -07:00
Wes Kocher 1196244596 Backed out 3 changesets (bug 1353000) for devtools failures a=backout CLOSED TREE
Backed out changeset 7ef3333cedf5 (bug 1353000)
Backed out changeset bd127ce305c7 (bug 1353000)
Backed out changeset 10e777bb90dc (bug 1353000)

--HG--
extra : amend_source : 8db7e67b22347962be0fdb055df1bb2c1853ab67
2017-04-12 10:59:12 -07:00
Jonathan Kew 723b4eedb4 Bug 1353000 - Preparatory patch, explicitly make the Script enum a 16-bit type, so we can add a field to gfxShapedWord without making it bigger. r=jrmuizel 2017-04-12 14:55:10 +01:00
Sebastian Hengst 85e118ae7d Backed out changeset 72858bb2ed9d (bug 1351427) for leaks detected by Linux x64 asan. r=backout 2017-04-11 21:11:09 +02:00
Jorg K 07cc134080 Bug 1351427 - Use OSPreferences for C++ date/time formats. r=emk
--HG--
extra : rebase_source : 9ede59a856fb585fbea6b01f343ec74b2b4325ac
2017-04-10 11:49:00 -04:00
Manish Goregaokar 42199474b9 Bug 1351200 - Part 3: stylo: Bypass cache when fetching font size prefs from Stylo; r=emilio
MozReview-Commit-ID: 7WBduQ6lBTC
2017-04-10 09:18:00 +08:00
Phil Ringnalda 98df36e955 Backed out 3 changesets (bug 1351200) for Windows and static-analysis build bustage
CLOSED TREE

Backed out changeset 1cce9249b4a2 (bug 1351200)
Backed out changeset 792fb55377f5 (bug 1351200)
Backed out changeset 767bee78574c (bug 1351200)
2017-04-09 08:24:54 -07:00
Manish Goregaokar 8bfdb295a6 Bug 1351200 - Part 3: stylo: Bypass cache when fetching font size prefs from Stylo; r=emilio
MozReview-Commit-ID: 7WBduQ6lBTC

--HG--
extra : rebase_source : f3bee21a7d105cad96231aa5bec5660cdbface06
2017-04-04 11:11:27 -07:00
Phil Ringnalda 8f78b639e7 Merge m-c to m-i 2017-04-07 08:02:21 -07:00
Phil Ringnalda a8bb90e93a Backed out changeset 5d3bc5f2c41f (bug 1354055) for mass Android reftest failures 2017-04-07 07:59:37 -07:00
Zibi Braniecki 847c06f3d1 Bug 1354055 - Don't cache wrong result in OSPreferences::ReadSystemLocales on Android. r=rnewman
MozReview-Commit-ID: Li7wUQnC9Gz

--HG--
extra : rebase_source : 6db7feb523c99634db468c3a674957163ec83142
2017-04-06 13:00:02 +02:00
Carsten "Tomcat" Book 3a762886de Merge mozilla-central to mozilla-inbound 2017-04-07 15:33:03 +02:00
André Bargull 5923180124 Bug 1353649 - Update tzdata in ICU data files to 2017b. r=Waldo
--HG--
extra : rebase_source : 48f6ab3a2bc6c91a1b6cc7429dd1ac0cb12d68ff
extra : histedit_source : 9687446c9877953592b99dd51a6a4d22af874a70
2017-04-05 10:49:53 +02:00
André Bargull 478bf14a1e Bug 1324240 - Also set LANGUAGE environment variable to ensure svn uses English instead of the OS locale. r=Waldo
--HG--
extra : rebase_source : b0d476ca4cc51982411072f576e44b87eb1020ed
extra : histedit_source : 1c79056745316d2689d60ad9129d881dbbec0aec
2017-04-05 10:41:42 +02:00
Makoto Kato 9f71d5e63f Bug 1351543 - Remove nsIPlatformCharset::GetDefaultCharsetForLocale. r=jfkthame
After landing bug bug 943283, no one uses nsIPlatformCharset::GetDefaultCharsetForLocale.  Also, nsIPlatformCharset isn't scriptable interface, so it is unnecessary now.

MozReview-Commit-ID: Giy68AS9yK2

--HG--
extra : rebase_source : a0ae86c5472e1ed74b41c2f6af5cdace353b335d
2017-03-31 10:40:19 +09:00
Zibi Braniecki ad3956d0f1 Bug 1351873 - Bind OSPreferences::GetSystemLocale to use `intl.locale.os` pref. r=rnewman
This patch fixes a regression that we hit on Fennec when we handed over control
over language negotiation to LocaleService in bug 1347306.

The problem is that we currently do not have good Android bindings for
OSPreferences::GetSystemLocale and in result we could not negotiate
languages between user-selected OS locales and available locales.

The temporary solution implemented here binds android OS preferences to
`intl.locale.os` pref which is set on Locale:OS event in browser.js.
In LocaleService we add a listener on the pref to renegotiate languages
when OS locale changes.

MozReview-Commit-ID: KTqjYSzLNNO

--HG--
extra : rebase_source : 61b692e81ce67cdb15a7962e41ebe78164dbe1aa
2017-03-31 01:30:54 +02:00
Zibi Braniecki 1f71b79b24 Bug 1339650 - Introduce mozIntl.DateTimeFormat. r=jfkthame
MozReview-Commit-ID: 1jnit4IlDN6

--HG--
extra : rebase_source : 2b319acbb9fe1c7bdb3bc555baff8b9030946715
2017-03-02 16:39:17 -08:00
Zibi Braniecki 5b976eeccb Bug 1347272 - Move ChromeRegistry::IsLocaleRTL to LocaleService::IsAppLocaleRTL. r=jfkthame
MozReview-Commit-ID: BDhgIKNSOEL

--HG--
extra : rebase_source : 6a009ba4d397e6794e86c87c10982fdfb8e7ba08
2017-03-14 12:35:06 -07:00
Iris Hsiao 394f455b8e Backed out changeset c7174ac72d14 (bug 1347272) for build bustage
--HG--
extra : amend_source : b4f3d5997190ce3db799e3586131cc3cb9ce034d
2017-03-28 18:16:33 +08:00
Zibi Braniecki 70c168c03f Bug 1347272 - Move ChromeRegistry::IsLocaleRTL to LocaleService::IsAppLocaleRTL. r=jfkthame
MozReview-Commit-ID: BDhgIKNSOEL

--HG--
extra : rebase_source : 8440ae6b21887bae5142c86220f02092d1b12aed
2017-03-14 12:35:06 -07:00
Zibi Braniecki ca25902077 Bug 1347306 - Hand over language negotiation from ChromeRegistry to LocaleService. r=jfkthame
MozReview-Commit-ID: RIPZUHN4LW

--HG--
extra : rebase_source : 3011d3c9f1887c9943d6636ea959bb643644bd3e
2017-03-14 15:28:47 -07:00
Makoto Kato 7127efa43c Bug 943287 - Part 3. nsICollation fallback version for Android. r=hsivonen
Beta and release channel of Android still turn off ICU.  So we should add UTF-8 version of nsICollation for fallback.
Some people want to keep --enale-intl-api=no for faster build on developer environment, so even if non-Android, it will be required.


MozReview-Commit-ID: 3RcjqoVip1W

--HG--
rename : intl/locale/unix/nsCollationUnix.cpp => intl/locale/nsCollationAndroid.cpp
extra : rebase_source : 6844f32efe8c37b020f30bc745d4d4d8e95c4158
2017-03-23 13:43:38 +09:00
Makoto Kato 80c217bbec Bug 943287 - Part 2. Use ICU version of nsICollation on all platform. r=hsivonen
nsICollation for macOS version uses ICU, so we should use it on all platform since nightly and aurora can use ICU on all platform.

MozReview-Commit-ID: 4nTzDCjOQXJ

--HG--
rename : intl/locale/tests/unit/test_collation_mac_icu.js => intl/locale/tests/unit/test_collation.js
extra : rebase_source : 3b47f9a521e79be929bb4c39d0c68b9438075e4c
2017-03-23 13:42:49 +09:00
Makoto Kato aa97ad5859 Bug 943287 - Part 1. Rename nsCollation.cpp to nsCollationFactory.cpp. r=hsivonen
nsCollation.cpp implements nsCollationFactory and nsCollation utils classes.
To remove nsIPlatfromCharset dependency, I would like to remove nsCollaction utils class.  So at first, I would like to rename it to nsCollactionFactory.cpp. (then, nsICollation implementation will be nsCollation.cpp)

MozReview-Commit-ID: FaG3vfzi9cl

--HG--
rename : intl/locale/nsCollation.cpp => intl/locale/nsCollationFactory.cpp
rename : intl/locale/nsCollation.h => intl/locale/nsCollationFactory.h
extra : rebase_source : 25eebf52634310891d1bbcc974635b5cc4b1c402
2017-03-23 13:42:00 +09:00
Makoto Kato 4113212e91 Bug 1349855 - Remove unused nsILocale. r=emk
After landing bug 1301640, 1st parameter of nsIScriptableDateFormat.FormatDateTime() is ignored now.  So it is unnecessary to create nsILocaleService from locale parameter.

MozReview-Commit-ID: GlqC0D9shdy
2017-03-24 11:02:03 +09:00
Zibi Braniecki 3d91da8726 Bug 1347314 - Migrate calls to ChromeRegistry::GetSelectedLocale to use LocaleService::GetAppLocale. r=jfkthame,Pike
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.

This allows us to remove a lot of calls for the app locale.

The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.

MozReview-Commit-ID: DzmFEUvMq3N

--HG--
extra : rebase_source : 513ed31d995864939aa893e73c81ffdf591a6617
2017-03-14 16:09:54 -07:00
Sebastian Hengst 0a04f3b9e2 Backed out changeset cc308a73ad05 (bug 1347314) for eslint failure in test_device.html. r=backout 2017-03-22 18:20:26 +01:00
Zibi Braniecki cb77ac3b2d Bug 1347002 - Add LocaleService::GetAvailableLocales. r=jfkthame
MozReview-Commit-ID: 99I5WgdzXlb

--HG--
extra : rebase_source : 44e1316fd90b5f28fca6feb23dfdf112e74ed7c0
2017-03-13 17:33:24 -07:00
Zibi Braniecki c2cd68a689 Bug 1347314 - Migrate calls to ChromeRegistry::GetSelectedLocale to use LocaleService::GetAppLocale. r=jfkthame,Pike
In cases, where the caller is looking for the locale to be used for JS Intl API,
we can now replace it with `undefined` which causes JS Intl API to use the default
locale which since bug 1346674 is resolved to the app locale.

This allows us to remove a lot of calls for the app locale.

The remaining ones are split between `AsBCP47` and `AsLangTag`.
Here, the `AsLangTag` is used, as described in the API docs, for cases where
the language string is used for localization purposes, such as language negotaition
matching to our language resources etc.
`AsBCP47` is used when the returned value is handed over to ICU API.

MozReview-Commit-ID: DzmFEUvMq3N

--HG--
extra : rebase_source : 13fa4c397ba4c79303a2cd76684b5b8c4bd17331
2017-03-14 16:09:54 -07:00