Closed
Bug 1236347
Opened 8 years ago
Closed 7 years ago
Some strings like in doorhangers, notification bars etc. always in English
Categories
(Toolkit Graveyard :: Notifications and Alerts, defect)
Toolkit Graveyard
Notifications and Alerts
Tracking
(firefox46 affected)
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
firefox46 | --- | affected |
People
(Reporter: aryx, Unassigned)
References
Details
Some strings like in doorhangers, notification bars etc. always in English. This is basically the same issue as bug 1204374 but since Firefox 45, this also happens in new profiles on this machine. Reproduces in Aurora 45.0a2 20160102 (tested with German) and Nightly 46.0a1 20160102 (tested with French) but not with 44.0b4 (tested with German). Steps to reproduce: 1. Create a new Firefox profile. 2. In that profile, install the appropriate language pack from https://ftp.mozilla.org/pub/mozilla.org/firefox/ 3. Open about:config and set general.useragent.locale to the correct value (e.g. if you install German as de.xpi in step 2, set it to |de|). 4. Close Firefox. 5. Launch Firefox. Actual result: If you wait for some seconds on Aurora, the telemetry info bar gets shown at the bottom in English while the menu bar and other UI elements are in the language set in step 2. 6. Open http://chrisdavidmills.github.io/push-api-demo/ Actual result: Doorhanger popup which requests access to Push API is partially in English and the other language. Because many Linux distros use language packs, this will be broadly visible on that platform. As far as I know, the affected code is in nsBrowserGlue.js
Comment 2•8 years ago
|
||
Can you remote debug one of these and check if gNavigatorBundle does the right thing? I'm not sure we can track something we can't track to a cause, and this one puzzles me quite a bit. My assumption is that there's startup path changes, which make language packs be loaded at a different point in time, and XUL stringbundle elements don't reload their strings on locale change. But that's just throwing things out there.
Flags: needinfo?(l10n)
Comment 4•8 years ago
|
||
Does this reproduce on 45 beta as well? I suspect this is caused by the devedition code here: https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/components/nsBrowserGlue.js#777-788 which will trigger gBrowserBundle's lazy getter to resolve earlier than it would on release builds.
Flags: needinfo?(aryx.bugmail)
Reporter | ||
Comment 5•8 years ago
|
||
Yes, also happens with 45.0b9 (20160223142613).
Flags: needinfo?(aryx.bugmail)
Comment 6•8 years ago
|
||
(In reply to Sebastian H. [:aryx][:archaeopteryx] from comment #5) > Yes, also happens with 45.0b9 (20160223142613). Can you log a stack from the lazy getter for gBrowserBundle on a beta build?
Flags: needinfo?(aryx.bugmail)
Comment 7•8 years ago
|
||
(I mean, or nightly, but I'm guessing that'll be the block I linked to... if not, that might be easier?)
Reporter | ||
Comment 8•8 years ago
|
||
Unfortunately, it isn't about nsBrowserGlue.js (see below): Both with and without the language pack the stack trace in Nightly is: jar:file:///c:/Mozilla/Coding/Firefox/Application/central/browser/omni.ja!/components/nsBrowserGlue.js (141) resource://gre/modules/XPCOMUtils.jsm (198) jar:file:///c:/Mozilla/Coding/Firefox/Application/central/browser/omni.ja!/components/nsBrowserGlue.js (783) https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/components/nsBrowserGlue.js#778 > let themeName = gBrowserBundle.GetStringFromName("deveditionTheme.name"); The code you already identified. jar:file:///c:/Mozilla/Coding/Firefox/Application/central/browser/omni.ja!/components/nsBrowserGlue.js (279) https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/components/nsBrowserGlue.js#274 > this._finalUIStartup(); On 45.0b9, it doesn't get automatically triggered (neither in nsBrowseGlue.js nor in browser.js). An add-on install prompt (which uses English strings) doesn't trigger it, but a pointer lock demo from http://mdn.github.io/pointer-lock-demo/ jar:file:///c:/Mozilla/Coding/Firefox/Application/beta/browser/omni.ja!/components/nsBrowserGlue.js (160) resource://gre/modules/XPCOMUtils.jsm (198) jar:file:///c:/Mozilla/Coding/Firefox/Application/beta/browser/omni.ja!/components/nsBrowserGlue.js (2674) jar:file:///c:/Mozilla/Coding/Firefox/Application/beta/browser/omni.ja!/components/nsBrowserGlue.js (2789) So for the add-on install dialog, the English strings are from https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/base/content/browser-addons.js#301 > messageString = gNavigatorBundle.getString("addonDownloadingAndVerifying"); and gNavigatorBundle is retrieved by browser.js from browser.xul: https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/base/content/browser.js#86 The data reporting notification bar isn't from nsBrowserGlue.js but https://dxr.mozilla.org/mozilla-central/rev/918df3a0bc1c4d07299e4f66274a7da923534577/browser/base/content/browser-data-submission-info-bar.js#56
Flags: needinfo?(aryx.bugmail)
Comment 9•8 years ago
|
||
Dave, why wouldn't we have loaded the lang pack when browser.js runs / browser.xul loads its stringbundles?
Flags: needinfo?(dtownsend)
Comment 10•8 years ago
|
||
(In reply to Sebastian H. [:aryx][:archaeopteryx] from comment #0) > Some strings like in doorhangers, notification bars etc. always in English. > > This is basically the same issue as bug 1204374 but since Firefox 45, this > also happens in new profiles on this machine. > > Reproduces in Aurora 45.0a2 20160102 (tested with German) and Nightly 46.0a1 > 20160102 (tested with French) but not with 44.0b4 (tested with German). > > Steps to reproduce: > 1. Create a new Firefox profile. > 2. In that profile, install the appropriate language pack from > https://ftp.mozilla.org/pub/mozilla.org/firefox/ > 3. Open about:config and set general.useragent.locale to the correct value > (e.g. if you install German as de.xpi in step 2, set it to |de|). > 4. Close Firefox. > 5. Launch Firefox. > Actual result: > If you wait for some seconds on Aurora, the telemetry info bar gets shown at > the bottom in English while the menu bar and other UI elements are in the > language set in step 2. > 6. Open http://chrisdavidmills.github.io/push-api-demo/ > Actual result: > Doorhanger popup which requests access to Push API is partially in English > and the other language. If in step 5 you instead launch Firefox with "firefox -purgecaches" does the problem go away?
Flags: needinfo?(aryx.bugmail)
Reporter | ||
Comment 11•8 years ago
|
||
> If in step 5 you instead launch Firefox with "firefox -purgecaches" does the
> problem go away?
No.
Flags: needinfo?(aryx.bugmail)
Comment 12•8 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #9) > Dave, why wouldn't we have loaded the lang pack when browser.js runs / > browser.xul loads its stringbundles? I can't think of a reason, maybe the locale selection is getting messed up somehow, ISTR it uses some odd combination of criteria
Flags: needinfo?(dtownsend)
Comment 14•7 years ago
|
||
Doorhangers and notifications are working for me on 51. Can you try with a recent build? (Master password is still an issue and is a separate bug)
Reporter | ||
Comment 15•7 years ago
|
||
This works now in 54.0a1 20170207 on Windows 8.1 after the callers of gBrowserBundle got lazyfied.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
Updated•10 months ago
|
Product: Toolkit → Toolkit Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•