prevent importing the messages twice by confirming the dialog

This commit is contained in:
Tibor Kaputa 2021-09-22 22:56:14 +02:00 committed by GitHub
parent de57cc3085
commit cbd6e7fa60
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -12,8 +12,7 @@ import com.simplemobiletools.smsmessenger.helpers.MessagesImporter
import com.simplemobiletools.smsmessenger.helpers.MessagesImporter.ImportResult.IMPORT_FAIL
import com.simplemobiletools.smsmessenger.helpers.MessagesImporter.ImportResult.IMPORT_OK
import com.simplemobiletools.smsmessenger.helpers.MessagesImporter.ImportResult.IMPORT_PARTIAL
import kotlinx.android.synthetic.main.dialog_import_messages.view.import_mms_checkbox
import kotlinx.android.synthetic.main.dialog_import_messages.view.import_sms_checkbox
import kotlinx.android.synthetic.main.dialog_import_messages.view.*
class ImportMessagesDialog(
private val activity: SimpleActivity,
@ -24,6 +23,7 @@ class ImportMessagesDialog(
private val config = activity.config
init {
var ignoreClicks = false
val view = (activity.layoutInflater.inflate(R.layout.dialog_import_messages, null) as ViewGroup).apply {
import_sms_checkbox.isChecked = config.importSms
import_mms_checkbox.isChecked = config.importMms
@ -35,11 +35,16 @@ class ImportMessagesDialog(
.create().apply {
activity.setupDialogStuff(view, this, R.string.import_messages) {
getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
if(!view.import_sms_checkbox.isChecked && !view.import_mms_checkbox.isChecked){
if (ignoreClicks) {
return@setOnClickListener
}
if (!view.import_sms_checkbox.isChecked && !view.import_mms_checkbox.isChecked) {
activity.toast(R.string.import_unchecked_error_message)
return@setOnClickListener
}
ignoreClicks = true
activity.toast(R.string.importing)
config.importSms = view.import_sms_checkbox.isChecked
config.importMms = view.import_mms_checkbox.isChecked