Skip to content

Commit f26db8c

Browse files
Reset Calendar data when switching Threads
1 parent e701ce6 commit f26db8c

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

app/src/main/java/com/infomaniak/mail/ui/main/thread/ThreadViewModel.kt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,16 +75,18 @@ class ThreadViewModel @Inject constructor(
7575

7676
val quickActionBarClicks = SingleLiveEvent<QuickActionBarResult>()
7777

78+
//region Calendar Events
7879
private val treatedMessagesForCalendarEvent = mutableSetOf<String>()
7980
val isCalendarEventExpandedMap = mutableMapOf<String, Boolean>()
81+
//endregion
8082

8183
var deletedMessagesUids = mutableSetOf<String>()
8284
val failedMessagesUids = SingleLiveEvent<List<String>>()
8385

8486
val threadLive = MutableLiveData<Thread?>()
8587
val messagesLive = MutableLiveData<Pair<ThreadAdapterItems, MessagesWithoutHeavyData>>()
8688

87-
private var cachedSplitBodies = mutableMapOf<String, SplitBody>()
89+
private val cachedSplitBodies = mutableMapOf<String, SplitBody>()
8890

8991
var shouldMarkThreadAsSeen: Boolean = false
9092

@@ -98,7 +100,9 @@ class ThreadViewModel @Inject constructor(
98100
).map { it.obj }.asLiveData(ioCoroutineContext)
99101

100102
fun resetMessagesCache() {
101-
cachedSplitBodies = mutableMapOf()
103+
treatedMessagesForCalendarEvent.clear()
104+
isCalendarEventExpandedMap.clear()
105+
cachedSplitBodies.clear()
102106
shouldMarkThreadAsSeen = false
103107
superCollapsedBlock = null
104108
}
@@ -394,8 +398,6 @@ class ThreadViewModel @Inject constructor(
394398
}
395399
}
396400

397-
fun getCalendarEventTreatedMessageCount(): Int = treatedMessagesForCalendarEvent.count()
398-
399401
fun replyToCalendarEvent(attendanceState: AttendanceState, message: Message) = liveData(ioCoroutineContext) {
400402
val calendarEventResponse = message.latestCalendarEventResponse!!
401403

0 commit comments

Comments
 (0)