As of Reference Application 2.3.1, the user experience of switching your language is unnecessary awkward.
We should make this simpler, both by improving some wording, and by having any changes take effect immediately.
(Specifically, in the Reference Application we do not need to support the idea of having a different session locale from the user's default locale.)
- Changes here should be made in the adminui module.
- We want to have more smaller pages that improve usability, rather than fewer bigger pages (that are presumably easier for the developer), so instead of a generic "Default Settings" page that happens to have Locale settings on it, we should have a "My Languages" page that only has Locale-related settings.
- changing the current session's locale should be as easy as Context.setLocale(newLocale)
- changing the user's default locale comes from setting a user property as is done here
- When you click on My Account (and end up on http://demo.openmrs.org/openmrs/adminui/myaccount/myAccount.page) there should be a "My Languages" button (instead of "Default Settings")
- On that page:
- the title should be "My Languages"
- the first field should be "Primary Language" and it should have descriptive help text "the User Interface will be displayed in this language"
- the second field should be "Proficient Languages" and it should have descriptive help text "some search fields will show you synonyms in your other proficient languages"
- Selecting a language in the first field should automatically check its box in the second field.
- Saving the My Languages page should immediately change the session locale (so the next screen you see is in your newly-chosen language)
- Possibly done already in this commit.