summaryrefslogtreecommitdiffhomepage
path: root/android/src/main
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-22 18:41:31 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-05-26 14:14:28 +0000
commitbac32db084e2572fbf529d0061759a4b062b79e6 (patch)
treee8b98322b3c976f02fcb37815e24e1b02154b078 /android/src/main
parente199a7e214407d6759f09741acbd657df79b92a9 (diff)
downloadmullvadvpn-bac32db084e2572fbf529d0061759a4b062b79e6.tar.xz
mullvadvpn-bac32db084e2572fbf529d0061759a4b062b79e6.zip
Use the job tracker in `ProblemReportFragment`
Diffstat (limited to 'android/src/main')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ProblemReportFragment.kt22
1 files changed, 10 insertions, 12 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ProblemReportFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ProblemReportFragment.kt
index caccbaa2fc..b106e2925b 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ProblemReportFragment.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ProblemReportFragment.kt
@@ -13,14 +13,13 @@ import android.widget.EditText
import android.widget.TextView
import android.widget.ViewSwitcher
import kotlinx.coroutines.CompletableDeferred
-import kotlinx.coroutines.Dispatchers
-import kotlinx.coroutines.GlobalScope
-import kotlinx.coroutines.Job
-import kotlinx.coroutines.launch
import net.mullvad.mullvadvpn.R
import net.mullvad.mullvadvpn.dataproxy.MullvadProblemReport
+import net.mullvad.mullvadvpn.util.JobTracker
class ProblemReportFragment : Fragment() {
+ private val jobTracker = JobTracker()
+
private lateinit var problemReport: MullvadProblemReport
private lateinit var bodyContainer: ViewSwitcher
@@ -40,8 +39,6 @@ class ProblemReportFragment : Fragment() {
private lateinit var editMessageButton: Button
private lateinit var tryAgainButton: Button
- private var sendReportJob: Job? = null
-
override fun onAttach(context: Context) {
super.onAttach(context)
@@ -80,8 +77,9 @@ class ProblemReportFragment : Fragment() {
tryAgainButton = view.findViewById<Button>(R.id.try_again_button)
sendButton.setOnClickListener {
- sendReportJob?.cancel()
- sendReportJob = sendReport(true)
+ jobTracker.newUiJob("sendReport") {
+ sendReport(true)
+ }
}
editMessageButton.setOnClickListener {
@@ -89,7 +87,9 @@ class ProblemReportFragment : Fragment() {
}
tryAgainButton.setOnClickListener {
- sendReportJob = sendReport(false)
+ jobTracker.newUiJob("sendReport") {
+ sendReport(false)
+ }
}
userEmailInput.setText(problemReport.userEmail)
@@ -102,8 +102,6 @@ class ProblemReportFragment : Fragment() {
}
override fun onDestroyView() {
- sendReportJob?.cancel()
-
problemReport.userEmail = userEmailInput.text.toString()
problemReport.userMessage = userMessageInput.text.toString()
problemReport.deleteReportFile()
@@ -111,7 +109,7 @@ class ProblemReportFragment : Fragment() {
super.onDestroyView()
}
- private fun sendReport(shouldConfirmNoEmail: Boolean) = GlobalScope.launch(Dispatchers.Main) {
+ private suspend fun sendReport(shouldConfirmNoEmail: Boolean) {
val userEmail = userEmailInput.text.trim().toString()
problemReport.userEmail = userEmail