From ec72dc5d90c8f6d9bdc1dd64e3f9ef379a0a982f Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 11 May 2020 16:22:51 +0200 Subject: [PATCH] avoid setting a System wide default SIM card --- .../dialer/activities/CallActivity.kt | 4 ++-- .../dialer/activities/DialerActivity.kt | 2 +- .../dialer/dialogs/SelectSIMDialog.kt | 4 ++-- .../dialer/extensions/Activity.kt | 14 +++++++------- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/CallActivity.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/CallActivity.kt index a713e899..4712a391 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/CallActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/CallActivity.kt @@ -259,8 +259,8 @@ class CallActivity : SimpleActivity() { } private fun showPhoneAccountPicker() { - getHandleToUse(intent, callContact!!.number) { handle, setAsDefault -> - CallManager.call?.phoneAccountSelected(handle, setAsDefault) + getHandleToUse(intent, callContact!!.number) { handle -> + CallManager.call?.phoneAccountSelected(handle, false) } } diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/DialerActivity.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/DialerActivity.kt index 7931bb41..f574e7ed 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/DialerActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/DialerActivity.kt @@ -43,7 +43,7 @@ class DialerActivity : SimpleActivity() { @SuppressLint("MissingPermission") private fun initOutgoingCall() { try { - getHandleToUse(intent, callNumber.toString()) { handle, setAsDefault -> + getHandleToUse(intent, callNumber.toString()) { handle -> Bundle().apply { putParcelable(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE, handle) putBoolean(TelecomManager.EXTRA_START_CALL_WITH_VIDEO_STATE, false) diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/dialogs/SelectSIMDialog.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/dialogs/SelectSIMDialog.kt index dd5cda33..94a85266 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/dialogs/SelectSIMDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/dialogs/SelectSIMDialog.kt @@ -14,7 +14,7 @@ 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, setAsDefault: Boolean) -> Unit) { +class SelectSIMDialog(val activity: BaseSimpleActivity, val phoneNumber: String, val callback: (handle: PhoneAccountHandle) -> Unit) { private var dialog: AlertDialog? = null private val view = activity.layoutInflater.inflate(R.layout.dialog_select_sim, null) @@ -41,7 +41,7 @@ class SelectSIMDialog(val activity: BaseSimpleActivity, val phoneNumber: String, activity.config.saveCustomSIM(phoneNumber, label) } - callback(handle, view.select_sim_remember.isChecked) + callback(handle) dialog?.dismiss() } } diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/extensions/Activity.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/extensions/Activity.kt index 326e0235..caa37ed3 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/extensions/Activity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/extensions/Activity.kt @@ -15,7 +15,7 @@ import com.simplemobiletools.dialer.dialogs.SelectSIMDialog fun SimpleActivity.startCallIntent(recipient: String) { if (isDefaultDialer()) { - getHandleToUse(null, recipient) { handle, setAsDefault -> + getHandleToUse(null, recipient) { handle -> launchCallIntent(recipient, handle) } } else { @@ -25,22 +25,22 @@ fun SimpleActivity.startCallIntent(recipient: String) { // used at devices with multiple SIM cards @SuppressLint("MissingPermission") -fun SimpleActivity.getHandleToUse(intent: Intent?, phoneNumber: String, callback: (handle: PhoneAccountHandle, setAsDefault: Boolean) -> Unit) { +fun SimpleActivity.getHandleToUse(intent: Intent?, phoneNumber: String, callback: (handle: PhoneAccountHandle) -> Unit) { handlePermission(PERMISSION_READ_PHONE_STATE) { if (it) { val defaultHandle = telecomManager.getDefaultOutgoingPhoneAccount(PhoneAccount.SCHEME_TEL) when { - intent?.hasExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE) == true -> callback(intent.getParcelableExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE)!!, false) + intent?.hasExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE) == true -> callback(intent.getParcelableExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE)!!) config.getCustomSIM(phoneNumber)?.isNotEmpty() == true -> { val storedLabel = Uri.decode(config.getCustomSIM(phoneNumber)) val availableSIMs = getAvailableSIMCardLabels() val firstornull = availableSIMs.firstOrNull { it.label == storedLabel }?.handle ?: availableSIMs.first().handle - callback(firstornull, false) + callback(firstornull) } - defaultHandle != null -> callback(defaultHandle, true) + defaultHandle != null -> callback(defaultHandle) else -> { - SelectSIMDialog(this, phoneNumber) { handle, setAsDefault -> - callback(handle, setAsDefault) + SelectSIMDialog(this, phoneNumber) { handle -> + callback(handle) } } }