I can't reproduce this like you listed out. I can see that occasionally when you select something in the Languages list it does seem to switch partially to English. Killing and restarting F-Droid fixes it for me. This Languages switcher is a hack that fights Android, so its never going to work great. Since Android 7.x now has language prioritizations at the system level, we will not need this Languages switcher going forward.
If anyone wants to submit patches to make this work better, we'll happily review them.
I can even reproduce it in the emulator. Attached a video. The interesting part appears after 30 seconds, I just wanted to show the language setup on the emulator. Before recording, I installed F-Droid 0.103-alpha2 and started it once to trigger the package updates. As you can see, the first time starting nearby, it is German. The second time it is English.
Android before 7.0 did not support a language priority list, you could
only specify a single system language. There are many places in the
world where English is not the preferred common language. For example,
in Belarus, Ukraine, Kazakhstan, Uzbekstan, etc. they are much more
likely to speak Russian than English. So if someone has their phone in
Uzbek, and the app does not have that translation, the phone will
default to English. With the language chooser, those users can switch
it to Russian. Another example is in Spain, where people speaking
Basque, Asturian, Galego, Catalan, etc. would much rather have Spanish
than English as the fallback language. Android 7.0 eliminates that need,
since users can set Uzbek as the first language, then Russian as the second.
Also, there are quite a few languages that are not supported by Android
that have millions of speakers. For example, Tibetan and Albanian
(Shqip), where were added in 7.x, and Esperanto.
@eighthave: Was this fixed in f224483e, or is that just part of the problem? If so, mentioning #943 will not be enough to auto-close an issue, you need to say fixes #943 in commits or MR descriptions.
Ok, I've seen this a few times now. I think it'll only do the random switch into English if you have touched the Languages menu before. If the Languages pref is always left it on System Default and never touched, then I can't reproduce the random switch into English.
I think I found a fix anyway. Reopen this bug report if you are still seeing this issue after 0.103-alpha4.
I am using version 0.103 now. I have reset the app's data using the AppDetails page in Android settings. Not touched the language setting. Still getting the switch to English.
The android-25/google_apis/x86_64/ emulator now does not show the language settings menu at all.
Can still reproduce it in an android-23 emulator (also without having touched the setting)
@licaon-kter I'm guessing you're talking about Romanian. In that case, if random elements show up as English when using Romanian, that's because the Romanian translation is incomplete. Weblate says its 93% complete:
https://hosted.weblate.org/projects/f-droid/f-droid/
@ByteHamster the Languages setting in F-Droid is removed in 7.x and newer, since the system Language settings now provides a priority list. What language/country is your device set to? Have you tried manually setting the Languages preference to System Default.
@eighthave: That depends, is the app punishing me that I did not yet translate "priviledged extension" and "nearby" strings by changing random (yet translated) strings in Settings view to English? :)
I guess not, I've already tested with French, same error.
Also, even after selecting that, at random some elements end up as English.
Getting the same behavior in German. Did not really notice it because I just assumed that the strings are not translated. They seem to be translated though, so that's another language switcher problem ;)