diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsUtils.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsUtils.java index 03052f4f92..ea4a3283fe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsUtils.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSettingsUtils.java @@ -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++) { diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java index 32646a196a..9b2520c994 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/devicesettings/DeviceSpecificSettingsFragment.java @@ -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); diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppos/ZeppOsSettingsCustomizer.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppos/ZeppOsSettingsCustomizer.java index f392ad4436..9a6c422d93 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppos/ZeppOsSettingsCustomizer.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/huami/zeppos/ZeppOsSettingsCustomizer.java @@ -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);