Merge pull request #536 from ismailnurudeen/fix/on_dismiss_select_sim_dialog

fix: close DailerActivity when SelectSIMDialog dismissed.
This commit is contained in:
Tibor Kaputa 2023-03-14 10:37:29 +01:00 committed by GitHub
commit 637a98c777
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 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.*
@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 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?.setOnDismissListener {
onDismiss()
}
}
private fun selectedSIM(handle: PhoneAccountHandle, label: String) {

View File

@ -83,7 +83,11 @@ fun SimpleActivity.getHandleToUse(intent: Intent?, phoneNumber: String, callback
}
defaultHandle != null -> callback(defaultHandle)
else -> {
SelectSIMDialog(this, phoneNumber) { handle ->
SelectSIMDialog(this, phoneNumber, onDismiss = {
if (this is DialerActivity) {
finish()
}
}) { handle ->
callback(handle)
}
}