mirror of
https://gitlab.linphone.org/BC/public/linphone-android.git
synced 2026-01-17 11:28:06 +00:00
- Upon GSM interruption handle conference cases by leave()/enter()
- Upon StreamsRunning call state update in conference check and set locallyPaused flag.
This commit is contained in:
parent
3d93fb2bc1
commit
2580e822f5
2 changed files with 19 additions and 2 deletions
|
|
@ -239,6 +239,13 @@ class ConferenceViewModel : ViewModel() {
|
|||
waitForNextStreamsRunningToUpdateLayout = false
|
||||
reloadConferenceFragmentEvent.value = Event(true)
|
||||
}
|
||||
if (state == Call.State.StreamsRunning && call.conference?.isIn == true) {
|
||||
isConferenceLocallyPaused.value = false
|
||||
conferenceParticipantDevices.value?.forEach {
|
||||
if (it.isMe)
|
||||
it.isInConference.value = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -61,13 +61,23 @@ class NativeCallWrapper(var callId: String) : Connection() {
|
|||
|
||||
override fun onHold() {
|
||||
Log.i("[Connection] Pausing telecom call with id: $callId")
|
||||
getCall()?.pause() ?: selfDestroy()
|
||||
getCall()?.let { call ->
|
||||
if (call.conference != null)
|
||||
call.conference?.leave()
|
||||
else
|
||||
call.pause()
|
||||
} ?: selfDestroy()
|
||||
setOnHold()
|
||||
}
|
||||
|
||||
override fun onUnhold() {
|
||||
Log.i("[Connection] Resuming telecom call with id: $callId")
|
||||
getCall()?.resume() ?: selfDestroy()
|
||||
getCall()?.let { call ->
|
||||
if (call.conference != null)
|
||||
call.conference?.enter()
|
||||
else
|
||||
call.resume()
|
||||
} ?: selfDestroy()
|
||||
setActive()
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue