add a log message when selected subtype is not found

This commit is contained in:
Helium314 2024-02-02 20:46:51 +01:00
parent 3a354524f3
commit 246cd6c5cf

View file

@ -98,14 +98,17 @@ fun getSelectedSubtype(prefs: SharedPreferences): InputMethodSubtype {
val subtypes = if (prefs.getBoolean(Settings.PREF_USE_SYSTEM_LOCALES, true)) getDefaultEnabledSubtypes()
else enabledSubtypes
val subtype = subtypes.firstOrNull { localeAndLayout.first == it.locale() && localeAndLayout.second == SubtypeLocaleUtils.getKeyboardLayoutSetName(it) }
?: subtypes.firstOrNull()
if (subtype == null) {
if (subtype != null) {
return subtype
} else {
Log.w(TAG, "selected subtype $localeAndLayout not found")
}
if (subtypes.isNotEmpty())
return subtypes.first()
val defaultSubtypes = getDefaultEnabledSubtypes()
return defaultSubtypes.firstOrNull { localeAndLayout.first == it.locale() && localeAndLayout.second == SubtypeLocaleUtils.getKeyboardLayoutSetName(it) }
?: defaultSubtypes.firstOrNull { localeAndLayout.first.language == it.locale().language && localeAndLayout.second == SubtypeLocaleUtils.getKeyboardLayoutSetName(it) }
?: defaultSubtypes.first()
}
return subtype
}
fun setSelectedSubtype(prefs: SharedPreferences, subtype: InputMethodSubtype) {