Add haptic feedback to voice message record button (#1686)

This commit is contained in:
jonnyandrew
2023-10-30 12:01:39 +00:00
committed by GitHub
parent 84ddef3e6c
commit b1fffdc9e9

View File

@@ -21,8 +21,10 @@ import androidx.compose.foundation.layout.size
import androidx.compose.runtime.Composable
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Modifier
import androidx.compose.ui.hapticfeedback.HapticFeedbackType
import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.pointerInput
import androidx.compose.ui.platform.LocalHapticFeedback
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import io.element.android.libraries.designsystem.preview.ElementPreview
@@ -47,12 +49,26 @@ internal fun RecordButton(
) {
val coroutineScope = rememberCoroutineScope()
val pressState = rememberPressState()
val hapticFeedback = LocalHapticFeedback.current
val performHapticFeedback = {
hapticFeedback.performHapticFeedback(HapticFeedbackType.LongPress)
}
PressStateEffects(
pressState = pressState.value,
onPressStart = onPressStart,
onLongPressEnd = onLongPressEnd,
onTap = onTap,
onPressStart = {
onPressStart()
performHapticFeedback()
},
onLongPressEnd = {
onLongPressEnd()
performHapticFeedback()
},
onTap = {
onTap()
performHapticFeedback()
},
)
RecordButtonView(