mirror of
https://github.com/Helium314/HeliBoard.git
synced 2025-04-20 22:29:10 +00:00
treat default button as value change for SliderPreference
This commit is contained in:
parent
087f87e95c
commit
6995266bd1
2 changed files with 4 additions and 4 deletions
|
@ -26,7 +26,7 @@ fun <T: Number> SliderPreference(
|
|||
default: T,
|
||||
range: ClosedFloatingPointRange<Float>,
|
||||
stepSize: Int? = null,
|
||||
onValueChanged: (Float) -> Unit = { },
|
||||
onValueChanged: (Float?) -> Unit = { },
|
||||
) {
|
||||
val ctx = LocalContext.current
|
||||
val prefs = ctx.prefs()
|
||||
|
@ -59,7 +59,7 @@ fun <T: Number> 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()
|
||||
|
|
|
@ -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) } }
|
||||
)
|
||||
},
|
||||
)
|
||||
|
|
Loading…
Add table
Reference in a new issue