fix: close dialer activity if SelectSIMDialog is dismissed.

This commit is contained in:
ismailnurudeen
2023-02-10 13:25:49 +01:00
parent d4e8999242
commit 970c2ad66d
2 changed files with 14 additions and 2 deletions

View File

@@ -15,7 +15,12 @@ import com.simplemobiletools.dialer.extensions.getAvailableSIMCardLabels
import kotlinx.android.synthetic.main.dialog_select_sim.view.* import kotlinx.android.synthetic.main.dialog_select_sim.view.*
@SuppressLint("MissingPermission") @SuppressLint("MissingPermission")
class SelectSIMDialog(val activity: BaseSimpleActivity, val phoneNumber: String, val callback: (handle: PhoneAccountHandle?) -> Unit) { class SelectSIMDialog(
val activity: BaseSimpleActivity,
val phoneNumber: String,
onDismiss: () -> Unit = {},
val callback: (handle: PhoneAccountHandle?) -> Unit
) {
private var dialog: AlertDialog? = null private var dialog: AlertDialog? = null
private val view = activity.layoutInflater.inflate(R.layout.dialog_select_sim, null) private val view = activity.layoutInflater.inflate(R.layout.dialog_select_sim, null)
@@ -42,6 +47,10 @@ class SelectSIMDialog(val activity: BaseSimpleActivity, val phoneNumber: String,
dialog = alertDialog dialog = alertDialog
} }
} }
dialog?.setOnDismissListener {
onDismiss()
}
} }
private fun selectedSIM(handle: PhoneAccountHandle, label: String) { private fun selectedSIM(handle: PhoneAccountHandle, label: String) {

View File

@@ -12,6 +12,7 @@ import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.commons.models.SimpleContact import com.simplemobiletools.commons.models.SimpleContact
import com.simplemobiletools.dialer.activities.DialerActivity
import com.simplemobiletools.dialer.activities.SimpleActivity import com.simplemobiletools.dialer.activities.SimpleActivity
import com.simplemobiletools.dialer.dialogs.SelectSIMDialog import com.simplemobiletools.dialer.dialogs.SelectSIMDialog
@@ -83,7 +84,9 @@ fun SimpleActivity.getHandleToUse(intent: Intent?, phoneNumber: String, callback
} }
defaultHandle != null -> callback(defaultHandle) defaultHandle != null -> callback(defaultHandle)
else -> { else -> {
SelectSIMDialog(this, phoneNumber) { handle -> SelectSIMDialog(this, phoneNumber, onDismiss = {
if(this is DialerActivity) finish()
}) { handle ->
callback(handle) callback(handle)
} }
} }