onKeyPadPressed method
dynamic
onKeyPadPressed(
- String x
)
Implementation
onKeyPadPressed(String x) {
if (x == 'x') {
if (numbers.value[focusedIndex.value].isEmpty) {
numbers.value[max(focusedIndex.value - 1, 0)] = '';
focusedIndex.value--;
if (focusedIndex.value < 0) {
focusedIndex.value = 0;
}
} else
numbers.value[focusedIndex.value] = '';
} else {
numbers.value[focusedIndex.value] = x;
if (focusedIndex.value != (length - 1)) {
focusedIndex.value++;
} else {
numbers.refresh();
}
if (numbers.value.every(
(e) => e.isNotEmpty && focusedIndex.value == (length - 1),
)) {
onCodeSubmitted.call(numbers.value.join()).then((isSuccess) async {
if (!isSuccess) {
showToast('Invalid activation code');
await shake();
}
});
}
}
}