diff --git a/app/src/main/java/org/linphone/activities/main/conference/data/ScheduledConferenceData.kt b/app/src/main/java/org/linphone/activities/main/conference/data/ScheduledConferenceData.kt index 8023ac04f..63f69af1d 100644 --- a/app/src/main/java/org/linphone/activities/main/conference/data/ScheduledConferenceData.kt +++ b/app/src/main/java/org/linphone/activities/main/conference/data/ScheduledConferenceData.kt @@ -28,9 +28,8 @@ import org.linphone.core.tools.Log import org.linphone.utils.LinphoneUtils import org.linphone.utils.TimestampUtils -class ScheduledConferenceData(val conferenceInfo: ConferenceInfo) { +class ScheduledConferenceData(val conferenceInfo: ConferenceInfo, private val isFinished: Boolean) { val expanded = MutableLiveData() - val isFinished = MutableLiveData() val backgroundResId = MutableLiveData() val address = MutableLiveData() @@ -79,11 +78,7 @@ class ScheduledConferenceData(val conferenceInfo: ConferenceInfo) { Log.e("[Scheduled Conference] No organizer SIP URI found for: ${conferenceInfo.uri?.asStringUriOnly()}") } - val now = System.currentTimeMillis() / 1000 // Linphone uses time_t in seconds - val limit = conferenceInfo.dateTime + conferenceInfo.duration - isFinished.value = limit < now computeBackgroundResId() - computeParticipantsLists() } @@ -109,7 +104,7 @@ class ScheduledConferenceData(val conferenceInfo: ConferenceInfo) { } private fun computeBackgroundResId() { - backgroundResId.value = if (isFinished.value == true) { + backgroundResId.value = if (isFinished) { if (expanded.value == true) { R.drawable.shape_round_dark_gray_background_with_orange_border } else { diff --git a/app/src/main/java/org/linphone/activities/main/conference/viewmodels/ScheduledConferencesViewModel.kt b/app/src/main/java/org/linphone/activities/main/conference/viewmodels/ScheduledConferencesViewModel.kt index 3bc5e9d61..aa441b365 100644 --- a/app/src/main/java/org/linphone/activities/main/conference/viewmodels/ScheduledConferencesViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/conference/viewmodels/ScheduledConferencesViewModel.kt @@ -81,14 +81,14 @@ class ScheduledConferencesViewModel : ViewModel() { if (conferenceInfo.duration == 0) continue // This isn't a scheduled conference, don't display it val limit = conferenceInfo.dateTime + conferenceInfo.duration if (limit >= now) continue // This isn't a terminated conference, don't display it - val data = ScheduledConferenceData(conferenceInfo) + val data = ScheduledConferenceData(conferenceInfo, true) conferencesList.add(0, data) // Keep terminated meetings list in reverse order to always display most recent on top } } else { val oneHourAgo = now - 7200 // Show all conferences from 2 hours ago and forward for (conferenceInfo in coreContext.core.getConferenceInformationListAfterTime(oneHourAgo)) { if (conferenceInfo.duration == 0) continue // This isn't a scheduled conference, don't display it - val data = ScheduledConferenceData(conferenceInfo) + val data = ScheduledConferenceData(conferenceInfo, false) conferencesList.add(data) } }