diff --git a/Variant-Esplora/app/src/main/java/org/bitcoindevkit/devkitwallet/presentation/ui/screens/wallet/SendScreen.kt b/Variant-Esplora/app/src/main/java/org/bitcoindevkit/devkitwallet/presentation/ui/screens/wallet/SendScreen.kt index d00cfe4..9f1f9ae 100644 --- a/Variant-Esplora/app/src/main/java/org/bitcoindevkit/devkitwallet/presentation/ui/screens/wallet/SendScreen.kt +++ b/Variant-Esplora/app/src/main/java/org/bitcoindevkit/devkitwallet/presentation/ui/screens/wallet/SendScreen.kt @@ -24,6 +24,7 @@ import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.material3.AlertDialog import androidx.compose.material3.BottomSheetScaffold import androidx.compose.material3.BottomSheetScaffoldState @@ -53,6 +54,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.semantics.Role import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.text.input.KeyboardType import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp @@ -351,9 +353,11 @@ private fun TransactionAmountInput(recipientList: MutableList, transa .padding(vertical = 8.dp) .weight(0.5f), value = amount.value, - onValueChange = { - amount.value = it - recipientList[index].amount = it.toULong() + onValueChange = { newValue -> + if (newValue.all { it.isDigit() }) { + amount.value = newValue + recipientList[index].amount = newValue.toULongOrNull() ?: 0.toULong() + } }, label = { when (transactionType) { @@ -372,6 +376,7 @@ private fun TransactionAmountInput(recipientList: MutableList, transa } } }, + keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number), singleLine = true, textStyle = TextStyle(color = DevkitWalletColors.white), colors = OutlinedTextFieldDefaults.colors(