diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/UserDataActivity.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/UserDataActivity.kt index edf4a0a257..39ba64b657 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/UserDataActivity.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/UserDataActivity.kt @@ -31,6 +31,7 @@ import java.io.IOException import java.util.zip.ZipEntry import java.util.zip.ZipInputStream import java.util.zip.ZipOutputStream +import kotlin.system.exitProcess class UserDataActivity : AppCompatActivity() { private lateinit var taskViewModel: TaskViewModel @@ -180,7 +181,10 @@ class UserDataActivity : AppCompatActivity() { if (!isDolphinUserDataBackup(source)) return R.string.user_data_import_invalid_file - taskViewModel.mustRestartApp = true + taskViewModel.onResultDismiss = { + // Restart the app to apply the imported user data. + exitProcess(0) + } contentResolver.openInputStream(source).use { `is` -> ZipInputStream(`is`).use { zis -> diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/UserDataImportWarningDialog.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/UserDataImportWarningDialog.kt index 0648b7075a..5b018bee7d 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/UserDataImportWarningDialog.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/UserDataImportWarningDialog.kt @@ -12,7 +12,6 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder import org.dolphinemu.dolphinemu.R import org.dolphinemu.dolphinemu.activities.UserDataActivity import org.dolphinemu.dolphinemu.model.TaskViewModel -import kotlin.system.exitProcess class UserDataImportWarningDialog : DialogFragment() { private lateinit var taskViewModel: TaskViewModel @@ -37,12 +36,6 @@ class UserDataImportWarningDialog : DialogFragment() { ) } - taskViewModel.onResultDismiss = { - if (taskViewModel.mustRestartApp) { - exitProcess(0) - } - } - val taskDialog = TaskDialog() taskDialog.arguments = taskArguments taskDialog.show(requireActivity().supportFragmentManager, TaskDialog.TAG) diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/model/TaskViewModel.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/model/TaskViewModel.kt index 2ebc641b83..d9568bf2a0 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/model/TaskViewModel.kt +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/model/TaskViewModel.kt @@ -38,7 +38,6 @@ class TaskViewModel : ViewModel() { } var cancelled = false - var mustRestartApp = false private val state = MutableLiveData(NotStartedState()) @@ -57,7 +56,6 @@ class TaskViewModel : ViewModel() { fun clear() { state.value = NotStartedState() cancelled = false - mustRestartApp = false onResultDismiss = null }