Fix adding to chats for chat folders.

This commit is contained in:
Michelle Tang
2025-04-10 12:47:13 -04:00
parent 6613d5fccb
commit 021330a25d
2 changed files with 11 additions and 1 deletions

View File

@@ -356,4 +356,14 @@ class ChatFoldersViewModel : ViewModel() {
fun hasEmptyName(): Boolean { fun hasEmptyName(): Boolean {
return state.value.currentFolder.folderRecord.name.isEmpty() return state.value.currentFolder.folderRecord.name.isEmpty()
} }
fun shouldSetInitialFolder(): Boolean {
val original = state.value.originalFolder
val current = state.value.currentFolder
return original.folderRecord.id == current.folderRecord.id &&
original.folderRecord.showIndividualChats == current.folderRecord.showIndividualChats &&
original.folderRecord.showGroupChats == current.folderRecord.showGroupChats &&
original.includedRecipients == current.includedRecipients &&
original.excludedRecipients == current.excludedRecipients
}
} }

View File

@@ -97,7 +97,7 @@ class CreateFoldersFragment : ComposeFragment() {
val isNewFolder = state.originalFolder.folderRecord.id == -1L val isNewFolder = state.originalFolder.folderRecord.id == -1L
LaunchedEffect(Unit) { LaunchedEffect(Unit) {
if (state.originalFolder.folderRecord.id == state.currentFolder.folderRecord.id) { if (viewModel.shouldSetInitialFolder()) {
viewModel.setCurrentFolderId(arguments?.getLong(KEY_FOLDER_ID) ?: -1) viewModel.setCurrentFolderId(arguments?.getLong(KEY_FOLDER_ID) ?: -1)
viewModel.addThreadsToFolder(arguments?.getLongArray(KEY_THREAD_IDS)) viewModel.addThreadsToFolder(arguments?.getLongArray(KEY_THREAD_IDS))
} }