From 1a50ed1e85f433f04d6134cdaf266adb58234e5c Mon Sep 17 00:00:00 2001 From: ohassine Date: Tue, 27 Jan 2026 18:00:47 +0100 Subject: [PATCH 1/4] feat: sort tags by alphabetical order --- .../android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt index afc379bc24..1e4886017e 100644 --- a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt +++ b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt @@ -58,7 +58,7 @@ class AddRemoveTagsViewModel @Inject constructor( init { viewModelScope.launch { getAllTagsUseCase().onSuccess { tags -> - _state.update { it.copy(allTags = tags) } + _state.update { it.copy(allTags = tags.toList().sorted()) } } snapshotFlow { tagsTextState.text.toString() } .debounce(TYPING_DEBOUNCE_TIME) @@ -93,7 +93,7 @@ class AddRemoveTagsViewModel @Inject constructor( if (state.value.addedTags.isEmpty()) { removeNodeTagsUseCase(navArgs.uuid) } else { - updateNodeTagsUseCase(navArgs.uuid, state.value.addedTags) + updateNodeTagsUseCase(navArgs.uuid, state.value.addedTags.toSet()) } .onSuccess { sendAction(AddRemoveTagsViewModelAction.Success) } .onFailure { sendAction(AddRemoveTagsViewModelAction.Failure) } @@ -124,7 +124,7 @@ data class TagsViewState( val tagsUpdated: Boolean = false, val addedTags: Set = emptySet(), val suggestedTags: Set = emptySet(), - val allTags: Set = emptySet(), + val allTags: List = emptyList(), ) sealed interface AddRemoveTagsViewModelAction { From e090f980d78e7e1f7cab21cb994aaea2f852ebb1 Mon Sep 17 00:00:00 2001 From: ohassine Date: Tue, 27 Jan 2026 18:02:13 +0100 Subject: [PATCH 2/4] feat: cleanup --- .../android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt index 1e4886017e..13cc965ec8 100644 --- a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt +++ b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt @@ -93,7 +93,7 @@ class AddRemoveTagsViewModel @Inject constructor( if (state.value.addedTags.isEmpty()) { removeNodeTagsUseCase(navArgs.uuid) } else { - updateNodeTagsUseCase(navArgs.uuid, state.value.addedTags.toSet()) + updateNodeTagsUseCase(navArgs.uuid, state.value.addedTags) } .onSuccess { sendAction(AddRemoveTagsViewModelAction.Success) } .onFailure { sendAction(AddRemoveTagsViewModelAction.Failure) } From a508dd652b98eeb219acb94e87ab1c9609a8517d Mon Sep 17 00:00:00 2001 From: ohassine Date: Thu, 29 Jan 2026 18:06:49 +0100 Subject: [PATCH 3/4] chore: cleanup --- .../android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt index 13cc965ec8..c23fb4f182 100644 --- a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt +++ b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt @@ -58,7 +58,7 @@ class AddRemoveTagsViewModel @Inject constructor( init { viewModelScope.launch { getAllTagsUseCase().onSuccess { tags -> - _state.update { it.copy(allTags = tags.toList().sorted()) } + _state.update { it.copy(allTags = tags.sorted()) } } snapshotFlow { tagsTextState.text.toString() } .debounce(TYPING_DEBOUNCE_TIME) From 18eff05708334523a186f0b19c211daedc9b4c7e Mon Sep 17 00:00:00 2001 From: ohassine Date: Thu, 29 Jan 2026 18:11:54 +0100 Subject: [PATCH 4/4] chore: consider lowercase --- .../android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt index c23fb4f182..54d8748ba1 100644 --- a/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt +++ b/features/cells/src/main/java/com/wire/android/feature/cells/ui/tags/AddRemoveTagsViewModel.kt @@ -58,7 +58,7 @@ class AddRemoveTagsViewModel @Inject constructor( init { viewModelScope.launch { getAllTagsUseCase().onSuccess { tags -> - _state.update { it.copy(allTags = tags.sorted()) } + _state.update { it.copy(allTags = tags.sortedBy { tag -> tag.lowercase() }) } } snapshotFlow { tagsTextState.text.toString() } .debounce(TYPING_DEBOUNCE_TIME)