mirror of
https://gitlab.linphone.org/BC/public/linphone-android.git
synced 2026-02-05 05:49:33 +00:00
Try to prevent race condition when call is ending with call quality icon update
This commit is contained in:
parent
c9fdbf6f9d
commit
9d3e3f1bc8
1 changed files with 15 additions and 12 deletions
|
|
@ -1341,19 +1341,22 @@ class CurrentCallViewModel
|
|||
delay(1000)
|
||||
coreContext.postOnCoreThread {
|
||||
if (::currentCall.isInitialized) {
|
||||
val quality = currentCall.currentQuality
|
||||
val icon = when {
|
||||
quality >= 4 -> R.drawable.cell_signal_full
|
||||
quality >= 3 -> R.drawable.cell_signal_high
|
||||
quality >= 2 -> R.drawable.cell_signal_medium
|
||||
quality >= 1 -> R.drawable.cell_signal_low
|
||||
else -> R.drawable.cell_signal_none
|
||||
}
|
||||
qualityValue.postValue(quality)
|
||||
qualityIcon.postValue(icon)
|
||||
}
|
||||
val state = currentCall.state
|
||||
if (!LinphoneUtils.isCallEnding(state, true)) {
|
||||
val quality = currentCall.currentQuality
|
||||
val icon = when {
|
||||
quality >= 4 -> R.drawable.cell_signal_full
|
||||
quality >= 3 -> R.drawable.cell_signal_high
|
||||
quality >= 2 -> R.drawable.cell_signal_medium
|
||||
quality >= 1 -> R.drawable.cell_signal_low
|
||||
else -> R.drawable.cell_signal_none
|
||||
}
|
||||
qualityValue.postValue(quality)
|
||||
qualityIcon.postValue(icon)
|
||||
|
||||
updateCallQualityIcon()
|
||||
updateCallQualityIcon()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue