11package com.eps.todoturtle.nfc
22
3+ import android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION
34import android.os.Bundle
5+ import android.widget.Toast
46import androidx.activity.ComponentActivity
57import androidx.activity.compose.setContent
68import androidx.compose.foundation.layout.fillMaxSize
79import androidx.compose.material3.MaterialTheme
810import androidx.compose.material3.Surface
911import androidx.compose.ui.Modifier
1012import androidx.compose.ui.platform.LocalContext
13+ import com.eps.todoturtle.R
1114import com.eps.todoturtle.nfc.logic.NfcWriteViewModel.INIT.getNfcWriteModel
1215import com.eps.todoturtle.nfc.ui.WriteDevice
1316import com.eps.todoturtle.shared.logic.extensions.dataStore
@@ -23,9 +26,29 @@ class WriteToDeviceActivity : ComponentActivity() {
2326 modifier = Modifier .fillMaxSize(),
2427 color = MaterialTheme .colorScheme.background,
2528 ) {
26- WriteDevice (viewModel = viewModel)
29+ WriteDevice (viewModel = viewModel,
30+ onTagNotWriteable = ::restartActivity,
31+ onTagLost = ::restartActivity,
32+ unknownError = ::restartActivity,
33+ onNfcNotSupported = {
34+ Toast .makeText(this , getString(R .string.nfc_not_supported_solution), Toast .LENGTH_SHORT ).show()
35+ finish()
36+ },
37+ onWriteSuccessful = {
38+ Toast .makeText(this , getString(R .string.nfc_write_success), Toast .LENGTH_SHORT )
39+ .show()
40+ finish()
41+ })
2742 }
2843 }
2944 }
3045 }
46+
47+ private fun restartActivity () {
48+ finish()
49+ startActivity(intent.apply {
50+ addFlags(FLAG_ACTIVITY_NO_ANIMATION )
51+ })
52+ }
3153}
54+
0 commit comments