Add haptics to SliderItem
This commit is contained in:
parent
82a9d36df7
commit
f79f0a7e97
1 changed files with 11 additions and 1 deletions
|
@ -40,6 +40,8 @@ import androidx.compose.runtime.setValue
|
|||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.hapticfeedback.HapticFeedbackType
|
||||
import androidx.compose.ui.platform.LocalHapticFeedback
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
import tachiyomi.core.preference.Preference
|
||||
|
@ -160,6 +162,8 @@ fun SliderItem(
|
|||
valueText: String,
|
||||
onChange: (Int) -> Unit,
|
||||
) {
|
||||
val haptic = LocalHapticFeedback.current
|
||||
|
||||
Row(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
|
@ -180,7 +184,13 @@ fun SliderItem(
|
|||
|
||||
Slider(
|
||||
value = value.toFloat(),
|
||||
onValueChange = { onChange(it.toInt()) },
|
||||
onValueChange = {
|
||||
val newValue = it.toInt()
|
||||
if (newValue != value) {
|
||||
onChange(newValue)
|
||||
haptic.performHapticFeedback(HapticFeedbackType.TextHandleMove)
|
||||
}
|
||||
},
|
||||
modifier = Modifier.weight(1.5f),
|
||||
valueRange = min.toFloat()..max.toFloat(),
|
||||
steps = max - min,
|
||||
|
|
Reference in a new issue