diff options
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/RedeemVoucherDialogFragment.kt | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/RedeemVoucherDialogFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/RedeemVoucherDialogFragment.kt index c5c68d3c23..43c83e9f0f 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/RedeemVoucherDialogFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/RedeemVoucherDialogFragment.kt @@ -8,13 +8,17 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.view.ViewGroup.LayoutParams +import android.widget.EditText import net.mullvad.mullvadvpn.R import net.mullvad.mullvadvpn.ui.widget.Button import net.mullvad.mullvadvpn.util.JobTracker +import net.mullvad.mullvadvpn.util.SegmentedInputFormatter class RedeemVoucherDialogFragment : DialogFragment() { private val jobTracker = JobTracker() + private lateinit var voucherInput: EditText + override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, @@ -22,6 +26,16 @@ class RedeemVoucherDialogFragment : DialogFragment() { ): View { val view = inflater.inflate(R.layout.redeem_voucher, container, false) + voucherInput = view.findViewById(R.id.voucher_code) + + SegmentedInputFormatter(voucherInput, '-').apply { + allCaps = true + + isValidInputCharacter = { character -> + ('A' <= character && character <= 'Z') || ('0' <= character && character <= '9') + } + } + view.findViewById<Button>(R.id.cancel).setOnClickAction("action", jobTracker) { activity?.onBackPressed() } |
