keymanapp / keyman

Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
https://keyman.com/
Other
402 stars 112 forks source link

bug(android): the UI language doesn't switch as expected #5540

Closed MakaraSok closed 3 years ago

MakaraSok commented 3 years ago

Describe the bug

On Android 6.0.1 (Marshmallow), Keyman for Android 14.0.279 and this build version won't switch to the selected language from the Change display language.

Note that this does not happen when running the later version of Android (i.e. 11).

To Reproduce

  1. On Android 6.0.1 physical device, go to Play Store and install Keyman or using the .apk from the build above.
  2. After the installation completed, go to Change display language under Settings
  3. Choose any language, i.e. Khmer
  4. See error - the language stays in English

Expected behavior

The display language should have switched according to what's selected from the language menu.


Keyman for Android:


Additional context

This emerges when doing Acceptance Test for Android. cf. https://github.com/keymanapp/keyman/issues/5539

Change Display Language

This tests changing the display language for the App and assumes starting with English locale

  • [x] From "Settings" --> "Change Display Language"
  • [x] Select "Khmer"
  • [ ] FAILED From "Settings" --> Verify menu selections in Khmer

    Things stay in English even after multiple attempts have been made. Note also that this happens with any language selection.

darcywong00 commented 3 years ago

May have a difficulty in repro. I only have access to emulator: Nexus 5 both Android 5.0 and Android 6.0 are able to change the display language.

MakaraSok commented 3 years ago

Repro with Nexus 5 device emulation (Android 6). KM is being tested here. It looks like the Keyman app UI language is tied with the system UI language selection.

When switching the language using Change display language from within Keyman app, everything is shown in English except for a moment that a tooltip on the globe key is in KM.

image

When switching the UI language of the Android system wide to KM, the Keyman app UI is shown in the Khmer.

image image