diff --git a/app/src/main/java/helium314/keyboard/settings/preferences/SliderPreference.kt b/app/src/main/java/helium314/keyboard/settings/preferences/SliderPreference.kt index 1eae33b41..8a52a914d 100644 --- a/app/src/main/java/helium314/keyboard/settings/preferences/SliderPreference.kt +++ b/app/src/main/java/helium314/keyboard/settings/preferences/SliderPreference.kt @@ -26,7 +26,7 @@ fun SliderPreference( default: T, range: ClosedFloatingPointRange, stepSize: Int? = null, - onValueChanged: (Float) -> Unit = { }, + onValueChanged: (Float?) -> Unit = { }, ) { val ctx = LocalContext.current val prefs = ctx.prefs() @@ -59,7 +59,7 @@ fun SliderPreference( }, onValueChanged = onValueChanged, showDefault = true, - onDefault = { prefs.edit().remove(key).apply() }, + onDefault = { prefs.edit().remove(key).apply(); onValueChanged(null) }, intermediateSteps = stepSize?.let { // this is not nice, but slider wants it like this... ((range.endInclusive - range.start) / it - 1).toInt() diff --git a/app/src/main/java/helium314/keyboard/settings/screens/PreferencesScreen.kt b/app/src/main/java/helium314/keyboard/settings/screens/PreferencesScreen.kt index 584ae858c..70f29767c 100644 --- a/app/src/main/java/helium314/keyboard/settings/screens/PreferencesScreen.kt +++ b/app/src/main/java/helium314/keyboard/settings/screens/PreferencesScreen.kt @@ -172,7 +172,7 @@ fun createPreferencesSettings(context: Context) = listOf( else stringResource(R.string.abbreviation_unit_milliseconds, it.toString()) }, range = -1f..100f, - onValueChanged = { AudioAndHapticFeedbackManager.getInstance().vibrate(it.toLong()) } + onValueChanged = { it?.let { AudioAndHapticFeedbackManager.getInstance().vibrate(it.toLong()) } } ) }, Setting(context, Settings.PREF_KEYPRESS_SOUND_VOLUME, R.string.prefs_keypress_sound_volume_settings) { setting -> @@ -186,7 +186,7 @@ fun createPreferencesSettings(context: Context) = listOf( else (it * 100).toInt().toString() }, range = -0.01f..1f, - onValueChanged = { audioManager.playSoundEffect(AudioManager.FX_KEYPRESS_STANDARD, it) } + onValueChanged = { it?.let { audioManager.playSoundEffect(AudioManager.FX_KEYPRESS_STANDARD, it) } } ) }, )