[Translate.Next] Improve language negotiation

NEW
Unassigned

Status

enhancement
P4
normal
8 months ago
5 months ago

People

(Reporter: adrian, Unassigned)

Tracking

Trunk
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

With bug 1486500, language negotiation is done on the server side, and works like this: 

if the user if logged in, and they have a custom homepage, return custom homepage
else do language negotiation based on the request
else return en-US

Using the custom home page is bad because that is not what this setting is made for, and users will not expect it to work like that. This process also always returns a single locale, but we know that for some locales it would be better to return a list of locales (for example, es-AR might want to fallback to es-ES then en-US). 

In addition, I believe that some users will want to be able to choose the locale they see the UI in. I might have my browser configured to French but still want to see Pontoon in English. 

I thus see 3 potential solutions: 

1. We add a new setting to let the users override their locale. For users that have not configured that setting, we use simple lang neg.

2. We do not use a setting, and only return the result of lang neg based on the browser's metadata. If we do that, we might want to add a way for user to change the language of the UI (a button or a dropdown or something).

3. We use a setting, but instead of returning a single locale, we apply some process to return a smart list of fallbacks, just like lang neg does. I do not know if that is doable, nor how to do it.
Priority: -- → P4
Assignee: adrian → nobody
You need to log in before you can comment on or make changes to this bug.