From 46a5526eab57640cec1971c3eb4722090efaf7de Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Sun, 3 May 2026 10:40:24 +0300 Subject: [PATCH] In case incoming call is diverted, show also diverter --- .../main/kotlin/com/tutpro/baresip/Call.kt | 2 ++ .../kotlin/com/tutpro/baresip/MainScreen.kt | 30 ++++++++++++++++--- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/com/tutpro/baresip/Call.kt b/app/src/main/kotlin/com/tutpro/baresip/Call.kt index 330cb546..3dbeb1a4 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/Call.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/Call.kt @@ -29,6 +29,8 @@ class Call(val callp: Long, val ua: UserAgent, val peerUri: String, val dir: Str val callUri: MutableState = mutableStateOf("") val callUriEnabled: MutableState = mutableStateOf(true) val callUriLabel: MutableState = mutableStateOf("") + val callUri2: MutableState = mutableStateOf("") + val callUriLabel2: MutableState = mutableStateOf("") val securityIconTint: MutableState = mutableIntStateOf(-1) val showCallTimer: MutableState = mutableStateOf(false) var callDuration: Int = 0 diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt index 85e7da8f..99392ac6 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt @@ -1292,6 +1292,25 @@ private fun CallUriRow( imeAction = ImeAction.Default ) ) + if (!isDialer && call!!.callUri2.value != "") { + Spacer(modifier = Modifier.height(8.dp)) + OutlinedTextField( + value = call.callUri2.value, + readOnly = true, + singleLine = true, + onValueChange = {}, + modifier = Modifier + .fillMaxWidth() + .padding(start = 4.dp, end = 4.dp, top = 2.dp, bottom = 2.dp), + label = { + Text( + text = call.callUriLabel2.value, + fontSize = 18.sp + ) + }, + textStyle = TextStyle(fontSize = 18.sp) + ) + } Spacer(modifier = Modifier.height(8.dp)) Column( modifier = Modifier @@ -2251,6 +2270,7 @@ private fun showCall(ctx: Context, viewModel: ViewModel, ua: UserAgent?, showCal else ctx.getString(R.string.outgoing_call_to_dots) call.callUri.value = Utils.friendlyUri(ctx, call.peerUri, ua.account) + call.callUri2.value = "" call.showCallTimer.value = false call.securityIconTint.value = -1 call.showCallButton.value = false @@ -2263,14 +2283,15 @@ private fun showCall(ctx: Context, viewModel: ViewModel, ua: UserAgent?, showCal "incoming" -> { call.showCallTimer.value = false call.securityIconTint.value = -1 + call.callUriLabel.value = ctx.getString(R.string.incoming_call_from_dots) + call.callUri.value = Utils.friendlyUri(ctx, call.peerUri, ua.account) val uri = call.diverterUri() if (uri != "") { - call.callUriLabel.value = ctx.getString(R.string.diverted_by_dots) - call.callUri.value = Utils.friendlyUri(ctx, uri, ua.account) + call.callUriLabel2.value = ctx.getString(R.string.diverted_by_dots) + call.callUri2.value = Utils.friendlyUri(ctx, uri, ua.account) } else { - call.callUriLabel.value = ctx.getString(R.string.incoming_call_from_dots) - call.callUri.value = Utils.friendlyUri(ctx, call.peerUri, ua.account) + call.callUri2.value = "" } call.showCallButton.value = false call.showCancelButton.value = false @@ -2294,6 +2315,7 @@ private fun showCall(ctx: Context, viewModel: ViewModel, ua: UserAgent?, showCal } call.transferButtonEnabled.value = true } + call.callUri2.value = "" call.callTransfer.value = call.onHoldCall != null call.callDuration = call.duration() call.showCallTimer.value = true