Sort device language preference alphabetically

This commit is contained in:
José Rebelo
2025-07-12 13:13:56 +01:00
parent d8a4773c15
commit 3c76b58829
3 changed files with 5 additions and 1 deletions
@@ -212,7 +212,8 @@ public final class DeviceSettingsUtils {
}
// Sort, keeping "auto" at the top
Arrays.sort(combined, 1, length, Comparator.comparing(o -> o[0]));
final boolean hasAuto = "auto".contentEquals(entryValues[0]);
Arrays.sort(combined, hasAuto ? 1 : 0, length, Comparator.comparing(o -> o[0]));
// Reassign sorted values
for (int i = 0; i < length; i++) {
@@ -402,6 +402,8 @@ public class DeviceSpecificSettingsFragment extends AbstractPreferenceFragment i
languageListPreference.setEntries(entries);
languageListPreference.setEntryValues(values);
}
DeviceSettingsUtils.sortListPreference(languageListPreference);
}
String disconnectNotificationState = prefs.getString(PREF_DISCONNECT_NOTIFICATION, PREF_DO_NOT_DISTURB_OFF);
@@ -252,6 +252,7 @@ public class ZeppOsSettingsCustomizer extends HuamiSettingsCustomizer {
setupGpsPreference(handler, prefs);
setupButtonClickPreferences(handler);
// Since we populate the values dynamically, we need to sort it here
final Preference languagePref = handler.findPreference("language");
if (languagePref != null) {
DeviceSettingsUtils.sortListPreference((ListPreference) languagePref);