Skip to content

Commit d3ce65e

Browse files
Reset Calendar data when switching Threads
1 parent 462f42e commit d3ce65e

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

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

+7-4
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,14 @@ class ThreadViewModel @Inject constructor(
8484
val threadLive = MutableLiveData<Thread?>()
8585
val messagesLive = MutableLiveData<Pair<ThreadAdapterItems, MessagesWithoutHeavyData>>()
8686

87-
private var cachedSplitBodies = mutableMapOf<String, SplitBody>()
87+
private val cachedSplitBodies = mutableMapOf<String, SplitBody>()
88+
89+
//region Super Collapsed Block
8890
private var hasMarkedThreadAsSeen: Boolean = false
8991
private var superCollapsedBlock: MutableSet<String>? = null
9092
private var shouldDisplaySuperCollapsedBlock: Boolean? = null
9193
var hasUserClickedTheSuperCollapsedBlock = false
94+
//endregion
9295

9396
private val mailbox by lazy { mailboxController.getMailbox(AccountUtils.currentUserId, AccountUtils.currentMailboxId)!! }
9497

@@ -98,7 +101,9 @@ class ThreadViewModel @Inject constructor(
98101
).map { it.obj }.asLiveData(ioCoroutineContext)
99102

100103
fun resetMessagesCache() {
101-
cachedSplitBodies = mutableMapOf()
104+
treatedMessagesForCalendarEvent.clear()
105+
isCalendarEventExpandedMap.clear()
106+
cachedSplitBodies.clear()
102107
hasMarkedThreadAsSeen = false
103108
superCollapsedBlock = null
104109
shouldDisplaySuperCollapsedBlock = null
@@ -399,8 +404,6 @@ class ThreadViewModel @Inject constructor(
399404
}
400405
}
401406

402-
fun getCalendarEventTreatedMessageCount(): Int = treatedMessagesForCalendarEvent.count()
403-
404407
fun replyToCalendarEvent(attendanceState: AttendanceState, message: Message) = liveData(ioCoroutineContext) {
405408
val calendarEventResponse = message.latestCalendarEventResponse!!
406409

0 commit comments

Comments
 (0)