Fixed disabling/enabling of call buttons

This commit is contained in:
Juha Heinanen
2026-04-30 19:31:55 +03:00
parent 3c0bcec2cf
commit 0aa6dd1444

View File

@ -2031,7 +2031,6 @@ private fun callClick(ctx: Context, viewModel: ViewModel, dialerState: ViewModel
if (dialerState != null) {
val uriText = dialerState.callUri.value.trim()
if (uriText.isNotEmpty()) {
dialerState.callButtonsEnabled.value = false
val uris = Contact.contactUris(uriText)
if (uris.isEmpty())
makeCall(ctx, viewModel, uriText, dialerState.showCallConferenceButton.value)
@ -2085,6 +2084,7 @@ private fun makeCall(ctx: Context, viewModel: ViewModel, uriText: String, confer
!Call.calls().any { it.ua.account.aor == ua.account.aor })
Toast.makeText(ctx, R.string.call_already_active, Toast.LENGTH_SHORT).show()
else {
viewModel.dialerState.callButtonsEnabled.value = false
if (BaresipService.telecom) {
val tm = ctx.getSystemService(Context.TELECOM_SERVICE) as android.telecom.TelecomManager
val extras = android.os.Bundle()
@ -2101,6 +2101,7 @@ private fun makeCall(ctx: Context, viewModel: ViewModel, uriText: String, confer
tm.placeCall(uri.toUri(), extras)
} catch (e: SecurityException) {
Log.e(TAG, "placeCall failed: ${e.message}")
viewModel.dialerState.callButtonsEnabled.value = true
}
}
else {