diff --git a/app/src/main/kotlin/com/wire/android/ui/common/bottomsheet/conversation/HomeSheetContent.kt b/app/src/main/kotlin/com/wire/android/ui/common/bottomsheet/conversation/HomeSheetContent.kt index 02f59eb46ff..9dd45ce6ed9 100644 --- a/app/src/main/kotlin/com/wire/android/ui/common/bottomsheet/conversation/HomeSheetContent.kt +++ b/app/src/main/kotlin/com/wire/android/ui/common/bottomsheet/conversation/HomeSheetContent.kt @@ -146,7 +146,7 @@ internal fun ConversationMainSheetContent( } } } - if (moveConversationToFolder != null) { + if (moveConversationToFolder != null && !conversationSheetContent.isArchived) { add { MenuBottomSheetItem( leading = { @@ -168,7 +168,7 @@ internal fun ConversationMainSheetContent( ) } } - if (conversationSheetContent.folder != null) { + if (conversationSheetContent.folder != null && !conversationSheetContent.isArchived) { add { MenuBottomSheetItem( leading = { diff --git a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersNavArgs.kt b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersNavArgs.kt index d44bbd68710..14735f51c24 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersNavArgs.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersNavArgs.kt @@ -29,3 +29,9 @@ data class ConversationFoldersNavArgs( @Parcelize data class ConversationFoldersNavBackArgs(val message: String) : Parcelable + +@Parcelize +data class NewConversationFolderNavBackArgs( + val folderName: String, + val folderId: String +) : Parcelable diff --git a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersScreen.kt b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersScreen.kt index 7e78f6e007c..708d2b491fa 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersScreen.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/ConversationFoldersScreen.kt @@ -59,6 +59,7 @@ import com.wire.android.ui.common.topappbar.WireCenterAlignedTopAppBar import com.wire.android.ui.common.typography import com.wire.android.ui.destinations.NewConversationFolderScreenDestination import com.wire.kalium.logic.data.conversation.ConversationFolder +import com.wire.kalium.logic.data.conversation.FolderType @RootNavGraph @WireDestination( @@ -70,7 +71,7 @@ fun ConversationFoldersScreen( args: ConversationFoldersNavArgs, navigator: Navigator, resultNavigator: ResultBackNavigator, - resultRecipient: ResultRecipient, + resultRecipient: ResultRecipient, foldersViewModel: ConversationFoldersVM = hiltViewModel( creationCallback = { it.create(ConversationFoldersStateArgs(args.currentFolderId)) } @@ -104,7 +105,13 @@ fun ConversationFoldersScreen( when (it) { NavResult.Canceled -> {} is NavResult.Value -> { - foldersViewModel.onFolderSelected(it.value) + moveToFolderVM.moveConversationToFolder( + ConversationFolder( + it.value.folderId, + it.value.folderName, + FolderType.USER + ) + ) } } } diff --git a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/NewConversationFolderScreen.kt b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/NewConversationFolderScreen.kt index f51a2f95d04..17ef171102b 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/NewConversationFolderScreen.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/conversations/folder/NewConversationFolderScreen.kt @@ -66,13 +66,18 @@ import com.wire.android.util.ui.SnackBarMessageHandler @Composable fun NewConversationFolderScreen( navigator: Navigator, - resultNavigator: ResultBackNavigator, + resultNavigator: ResultBackNavigator, viewModel: NewFolderViewModel = hiltViewModel() ) { LaunchedEffect(viewModel.folderNameState.folderId) { if (viewModel.folderNameState.folderId != null) { - resultNavigator.navigateBack(viewModel.folderNameState.folderId!!) + resultNavigator.navigateBack( + NewConversationFolderNavBackArgs( + viewModel.textState.text.toString(), + viewModel.folderNameState.folderId!! + ) + ) } } diff --git a/app/src/main/kotlin/com/wire/android/ui/home/messagecomposer/state/MessageCompositionHolder.kt b/app/src/main/kotlin/com/wire/android/ui/home/messagecomposer/state/MessageCompositionHolder.kt index d6baec568c1..5a84cd16d46 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/messagecomposer/state/MessageCompositionHolder.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/messagecomposer/state/MessageCompositionHolder.kt @@ -205,12 +205,12 @@ class MessageCompositionHolder( appLogger.e("MessageCompositionHolder: Failure to add mention") return } - insertMentionIntoText(mention) messageComposition.update { it.copy( selectedMentions = it.selectedMentions.plus(mention).sortedBy { it.start } ) } + insertMentionIntoText(mention) } private fun insertMentionIntoText(mention: UIMention) {